【原文地址】:http://blogs.msdn.com/b/heaths/archive/2012/07/26/how-visual-studio-2012-avoids-prompts-for-source.aspx

【译文】:

要求安装,维修,甚至卸载源包等操作对于客户能够说是屡见不鲜。Windows安装程序的核心问题是须要资源和其安装位置,找不到它们就会安装失败或者图恢复机器的最初状态。(依据包装和不论什么补丁而定)。

WiX社区讨论的非常火,—— thechainer that is part of the toolset in v3.6——我们知道这是一个在Windows安装部署常见的问题。所以我们使用了包缓存技术,复制全部安装的软件包到一个固定的位置,缓存位置取决于包是为每台机器或仅仅是当前用户。

安装程序开发者能够设置是否包缓存,由于我们知道客户会出现关于提示Visual Studio 2012系列产品的缓存包源的问题。

 用户体验

包下载并验证或者他们已经证实后,把他们拷贝到本地硬盘。

安装包放在机器,这是一个安全可靠的地方。安装软件的时候我们就是在这里取安装源。

当修复、改动或卸载产品或安装、卸载补丁时,假设须要源媒体包缓存会自己主动使用,多数用户不需看到提示。可是假设包缓存缺失或不完整,Visual
Studio安装将会提示下载(或者连接)或定位源媒体。

如以下屏幕截图所看到的。

用户已经安装好了媒介,甚至与媒体又一次选择下载(或者连接)安装好后。

一般客户不会应该见过这个对话框中,我们从经验就非常easy知道。

哪怕包缓存丢失时也会提示我们下载包缓存。所以我们建议用户不删除包缓存。不论什么一款安装后就销毁和不提供反复下载的产品都须要包缓存,出现这样的情况,Windows安装程序须要源媒体包,不然我们无法处理。由于没有源码能够执行起来。

 影响硬盘空间

为了避免这样太无法驱动空间安装的不足。每台机器把像Visual Studio 2012的安装包拷贝到 %ProgramData%的位置上。这是在系统的默认位置。另外一个原因是VS2012须要系统空间,即使你安装VS2012到还有一个驱动盘了。

从客户调查数据知道:

  • 超过97%的客户在系统盘中是还有非常多的空间来安装我们需求空间极大的产品,Visual Studio 2012 Ultimate版本号(终极版)全然在系统能够安装驱动器。
    
  • 99%以上的客户在Windows 8是有足够的空间在他们的系统驱动安装像Visual Studio 2012的产品的。
  • 近100%的客户在他们的系统盘有足够的空间来安装置于其它盘符的的Visual Studio 2012的,虽然还会有一些消耗系统盘的空间。
    

一般来说,我们不推荐“系统分区”。我们知道开发者可能希望在一个独立的系统空间保持原位置的文件、二进制文件。甚至是工具。这是一个常见的设置。

但即使分了区,系统盘应该不会受到操作系统无法更新这种限制。很多常见的默认位置和一些无法改变的改变的位置都默认在系统盘。但系统盘也给足了空间给你的使用。

小结:

   由于系统盘出现危机,在系统盘中我删除了一些日志和缓存。

当中C:\ProgramData\Package Cache的文件,是关于一些安装包的缓存位置。看了一盘网上的文章,得出的结论就是可删可不删。

要删除的话。

希望你备份好这些缓存包。

How Visual Studio 2012 Avoids Prompts for Source的更多相关文章

  1. 在Visual Studio 2012中使用VMSDK开发领域特定语言(二)

    本文为<在Visual Studio 2012中使用VMSDK开发领域特定语言>专题文章的第二部分,在这部分内容中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计.定制.调试.发布以 ...

  2. Xamarin开发Android时Visual Studio 2012没有智能提示解决办法

    Most of the people who work with Xamarin’s Mono for Android in Visual Studio 2012 face a bug where I ...

  3. win8下在microsoft visual studio 2012利用ODP.NET连接ORACLE 12c

    老板要求我搭个ASP.NET框架,并且连接上ORACLE数据库,听起来好像挺简单的,但就是连第一步连接ORACLE我都搞了两天╮(╯▽╰)╭ 首先,项目书上要求用ORACLE 10G,可我自己的本本装 ...

  4. visual studio 2012 使用 git/github

    Visual studio 2012 除了支持自己的TFS还支持Git,这里讲的原生的支持,相比让VS2010支持Git要简单的多,仅仅需要两步: 第一步 安装工具: Microsoft.TeamFo ...

  5. 使用InstallUtil安装及卸载Windows服务的具体操作 Visual Studio 2012版本

    关于Visual Studio 2012中使用InstallUtil对Windows服务进行安装与卸载的文章,在MSDN中的http://msdn.microsoft.com/en-us/librar ...

  6. 如何在Visual Studio 2012中发布Web应用程序时自动混淆Javascript

    同Java..NET实现的应用程序类似,Javascript编写的应用程序也面临一个同样的问题:源代码的保护.尽管对大多数Javascript应用公开源代码不算是很严重的问题,但是对于某些开发者来说, ...

  7. 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)

    前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...

  8. Visual Studio 2012 trial version

    Update: vs2012.5.iso http://download.microsoft.com/download/9/F/1/9F1DEA0F-97CC-4CC4-9B4D-0DB45B8261 ...

  9. 在Visual Studio 2012 Blue theme下使用Dark theme的文本编辑器颜色设置

    Visual Studio 2012 默认提供了3种color theme: blue,light,和dark.其中dark的文本编辑器颜色设定很爽,可是整个菜单项加上一些小的窗口如Find Resu ...

随机推荐

  1. 【三分钟视频教程】iOS开发中 Xcode 报 apple-o linker 错误的#解决方案#

      [三分钟视频教程]iOS开发中 Xcode 报 apple-o linker 错误的#解决方案#   同样的道理,指向同一库文件的代码语句如果重复书写,即使重复书写所在的文件名字不同,同样会造成这 ...

  2. Android利用LocalSocket实现Java端进程与C端进程之间的IPC

    Android是建立在Linux之上的OS,在涉及到安全.网络协议.文件加密等功能时,往往需要通过C语言调用底层API来实现,而如何发出指令让C端执行我们想要的功能,并且在执行之后有返回结果呢,这就需 ...

  3. opencv附加依赖性选择,提示找不到opencv_world400d.dll

    连接器>>输入>>附加依赖项,添加opencv_world400d.lib库文件名,在....\opencv\build\x64\vc14\lib有2个lib文件, 带d的是d ...

  4. 无锁并发框架Disruptor学习入门

    刚刚听说disruptor,大概理一下,只为方便自己理解,文末是一些自己认为比较好的博文,如果有需要的同学可以参考. 本文目标:快速了解Disruptor是什么,主要概念,怎么用 1.Disrupto ...

  5. Anaconda+django写出第一个web app(十)

    今天继续学习外键的使用. 当我们有了category.series和很多tutorials时,我们查看某个tutorial,可能需要这样的路径http://127.0.0.1:8000/categor ...

  6. mysqlbinlog 查看mysql bin 日志 mysqlbinlog: unknown variable 'default-character-set=utf8'

    mysqlbinlog  mysql-bin.000036 | less 查询包含几个字段的语句: mysqlbinlog mysql-bin.000036| egrep '(201103061000 ...

  7. 远程不能访问CentOS的tomcat 8080端口

    一般认为是CentOS的iptabls防火墙的问题,方法如下: ps -ef | grep tomcat ker 4399 1 6 21:46 pts/1 00:00:01 /usr/java/jdk ...

  8. ASP .Net Core系统部署到SUSE Linux Enterprise Server 12 SP3 64 具体方案

    .Net Core 部署到 SUSE Linux Enterprise Server 12 SP3 64 位中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk-2. ...

  9. PHP取整函数之ceil,floor,round,intval的区别

    我们经常用到的PHP取整函数,主要是:ceil,floor,round,intval. ceil -- 进一法取整 说明 float ceil ( float value ) 返回不小于 value ...

  10. Visual C++中最常用的类与API函数

    这篇文章能让初学者快速了解visual C++ MFC中常见的核心的类与函数,虽然全部看下来有点枯燥,但对初学者快速了解MFC的框架结构很有好处. 常用类 CArchive类:用于二进制保存档案 CB ...