1、需要打包的檔案,目錄層級很多,檔案數量也很多(甚至有幾萬個),沒法手工寫wxs安裝檔案
解決辦法是呼叫heat命令列,自動生成wxs檔案。
heat.exe dir .
.\..\help -cg oemhelpfilescomponents -dr oemhelpfilesfolder
-sreg -srd -
varvar
.helpfilesfolder -ag -sfrag -out helpfile.wxs
其中oemhelpfilesfolder是在product.wxs內定義的目標資料夾:
helpfilesfolder需要在預定義內事先定義:
helpfilesfolder=
$(solutiondir)
..\help;deployresdllsfolder=
$(solutiondir)
..\.
.\deploy\resdlls;
<
/defineconstants>
且var.helpfilesfolder會成為wxs檔案內的路徑起始:
2、打包檔案超過2gb,light報錯算術運算子溢位(light.exe(0,0): error lght0001: 算術運算導致溢位)
解決辦法是在product內,mediatemplate的embedcab 設定為no,具體**如下:
id="*" name=
"$(var.productname) msi"
language=
"2052"
version=
"$(var.productversion)"
manufacturer=
"$(var.productmanufacturer)"
upgradecode=
"f2b48580-bab4-487b-a9a6-931ac1ec602b"
>
"200" compressed=
"yes" installscope=
"permachine"
/>
"a newer version of [productname] is already installed."
/>
"no"
/>
"productfeature" title=
"***setup" level=
"1">
"productprogramcomponents"
/>
"productshortcuts"
/>
<
/feature>
'customaction1' before=
'installfinalize'
>
not installed<
/custom>
'customaction2' after=
'installfinalize'
>
not installed<
/custom>
<
/installexecutesequence>
<
/product>
這樣的話,就會在輸出目錄下除了生成msi或exe以外,還會生成很多cab檔案,如下所以:
待續…
利用WIX製作安裝包 2
利用wix製作安裝包 2 原文 利用wix製作安裝包 2 在wixui featuretree dialog set中一共包含了如下幾種dialog。first time install dialog sequence wixui welcomedlg wixui licenseagreementd...
使用Wix簡單製作了個安裝包
之前看了好幾個打包軟體 advanceinstaller installshield什麼的,發現大都是收費的,看的wix還是sourceforget上停更的版本,以為沒戲,沒想到在github偶爾看到了wixtoolset,原來還有更新,還有vs2019的外掛程式,趕緊下了乙個用用.終於把我的dot...
筆記 WiX製作msi安裝包的例子
wix是製作msi安裝檔案的工具,看了半天文件,感覺沒有什麼比乙個例子更簡單粗暴的了。xml version 1.0 encoding utf 8 wix xmlns product id name hellomsi language 1033 version 1.0.0.0 manufacture...