【原文地址】: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. Caffe 碎碎念

    Window Data Layer window data layer 的数据是存在硬盘上的图片, 需要在一个txt里指定用于训练或测试的图片以及bounding box, bounding box ...

  2. lucene删除索引——(五)

    增加在入门程序创建索引中,增删改用IndexWriter. 1.获取IndexWriter的代码 // public IndexWriter getIndexWriter() throws Excep ...

  3. 在pycharm和tensorflow环境下运行nmt

    目的是在pycharm中调试nmt代码,主要做了如下工作: 配置pycharm编译环境 在File->Settings->Project->Project Interpreter 设 ...

  4. Gitlab的安装汉化及问题解决

    Gitlab的安装汉化及问题解决(2017/12/14目前版本为10.2.4) 一.前言 Gitlab需要安装的包太TM多了,源码安装能愁死个人,一直出错,后来发现几行命令就装的真是遇到的新大陆一样. ...

  5. ASP.NET结合COM组件发送Email

    在开发电子邮件发送程序的时候,我们经常需要使用到相应的组件,其实不需要第三方的组件(例如:Jmail)照常可以做到发送Email的功能. 在系统目录(如c:/winnt或c:/windows)的sys ...

  6. Eureka的自我保护模式

    一 Eureka的自我保护模式 进入自我保护模式最直观的体现就是Eureka Server首页的警告,如下图: 默认情况下,如果Eureka Server在一定时间内没有接收到某个微服务实例的心跳,E ...

  7. day22-23作业

    1.字节流  字符流    2.read()  3.-1  4.System.out  5.InputStream  6.OutputStream 1.IO流按流向分为输入流和输出流,即输入流和输出流 ...

  8. [java笔记]JDK的安装和配置

    1.JDK安装下载java JDK:点击下载(http://www.oracle.com/technetwork/java/javase/downloads/index.html )JDK(Java ...

  9. java 重新抛出异常

    一.有时希望把刚捕获的异常重新抛出,尤其时在使用Exception捕获所以异常的时候,既然已经得到了对当前异常对象的引用,可以重新把它抛出: catch(Exception e){ System.ou ...

  10. 我的CSS命名规则

    常见class关键词: 布局类:header, footer, container, main, content, aside, page, section 包裹类:wrap, inner 区块类:r ...