大家可能遇到过一种情况,在开发.NET 4项目后,用 Visual Studio Installer 项目 类型进行项目安装打包,
1.在 安装项目上 点右键
2.选择 属性
3.选择 系统必备
4.选择 如下图
打包之后在 Windows Server 2003 或者 Windows XP <=SP2 部署环境时,显示缺少 "Windows 图像处理组件"(WIC)。
一台两台机器的话就直接到微软网站上下载了,但如果N多(N>10)每台手动装很不方便,于是产生此文。WIC组件XP SP3以上自带,.NET 4.0依赖此组件。我打算把他添加到系统必备列表。
经过Google后,得到 "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\" 目录与此有关(注:我的VS2010安装在C盘默认目录,下同)。
MSDN相关资料:
添加自定义系统必备 http://msdn.microsoft.com/zh-cn/library/ms165429(v=vs.80).aspx
创建引导程序包 http://msdn.microsoft.com/zh-cn/library/ms165429.aspx
产品和包架构引用 http://msdn.microsoft.com/zh-cn/library/ms229223.aspx
1.在 "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\" 目录下建立 WindowsImagingComponent 组件目录。
2.建立如下目录文件结构
├─WindowsImagingComponent │ │ product.xml │ │ │ ├─en │ │ eula.txt │ │ package.xml │ │ wic_x 64 _enu.exe │ │ wic_x 86 _enu.exe │ │ │ └─zh-Hans │ eula.txt │ Package.xml │ wic_x 64 _chs.exe │ wic_x 86 _chs.exe |
3.编辑文件 product.xml 内容如下
<?xml version="1.0" encoding="utf-8"?>
<Product ProductCode="Windows.Imaging.Component" xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper">
</Product>
4.编辑 zh-Hans 目录下 Package.xml 内容如下
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
5. 编辑 en 目录下 package.xml 内容如下
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
其中 两个 eula.txt 是各自语言的授权协议,不用关注,几个exe文件下载地址如下
wic_x64_chs.exe:http://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=f64654ac-6e26-41d9-a90a-0e7783b864ee
wic_x86_chs.exe:http://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=8e011506-6307-445b-b950-215def45ddd8
wic_x64_enu.exe:http://www.microsoft.com/downloads/en/details.aspx?familyid=F64654AC-6E26-41D9-A90A-0E7783B864EE&displaylang=en
wic_x86_enu.exe:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=8e011506-6307-445b-b950-215def45ddd8&displaylang=en
真实地址在相关XML里已经标注,在打包文件中。
使用方法:
1.解压,把 WindowsImagingComponent 目录 剪贴到 "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\" 目录下。
2.下载上述四个文件依照目录结构放入WindowsImagingComponent子文件夹。
3.修改
C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX40 和
C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX40Client
目录下的 Product.xml 文件
在 每个文件的 RelatedProducts 节增加子节点 <DependsOnProduct Code="Windows.Imaging.Component" />
修改后的 DotNetFX40 的 Product.xml 的 RelatedProducts 节如下
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
这时重新编译Installer项目,就会得到自动安装WIC的安装包。
https://files.cnblogs.com/binsys/120311BootstrapperForWIC.7z