我的第一个WIX安装程序(我有InstallShield经验)。我已经包含了这个合并模块......
Merge Id="CRT" Language="0" SourceFile="$(env.LIBRARY_ROOT)\microsoft-merge-modules\vs2010-sp1\Microsoft_VC100_CRT_x64.msm" DiskId='1'
媒体如下......
Media Id='1' Cabinet='product.cab' CompressionLevel='high' EmbedCab='yes'
我在ORCA中打开MSI文件,看到组件表中列出的两个mscv ...文件,但安装程序解决方案的Visual Studio 2010版本(除了创建msi文件)之外,还创建了一个WIN \ SYSTEM64文件夹其中包含两个文件(msvcr100.dll
和msvcp100.dll
)。
当我在我的测试系统上运行安装程序时,(如果我也没有带来Win文件夹),我会收到“从文件中读取错误:c:\lou\win\system32\msvcp100.dll
”。
然后我添加了另一个我自己创建的产品合并模块,同样,那些文件(正在安装到ProgramFilesx64),不在msi中,但是在一个单独的文件夹'Program Files 64 \ productfolder'中需要被复制到目标系统。
为什么这些文件不包含在MSI文件中?
答案 0 :(得分:0)
在WIX文档中,对Package元素的Compression属性进行了描述:
压缩YesNoDefaultType包有效负载是应嵌入容器还是作为外部有效负载保留。