1

誰かが私に良い例を教えてくれますか、または32ビットと64ビットのインストーラーを有効にする正しい方向に私を設定できますか?Wix3.6を使用しています。

私はこれを試しました:

<?if $(var.Platform) = x64 ?>
<?define ProductName = "InsomniacGeek: Windows Setup Test (64 bit)" ?>
<?define Win64 = "yes" ?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
<?else ?>
<?define ProductName = "InsomniacGeek: Windows Setup Test" ?>
<?define Win64 = "no" ?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
<?endif ?>


<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" Platform="$(var.Platform)" />

これは好きではありませんが、Platform属性が無効であると書かれています。誰かがこれを機能させてくれて、私を助けてくれませんか?

4

1 に答える 1

2

それはまさに私がそれを行う方法であり、それは完全にうまく機能します。

$(var.Platform)リテラルテキストはWiXソースファイルのXMLスキーマで定義されたプラットフォーム列挙値の1つではないため、Votiveで波線と警告が表示されます。プリプロセッサがファイルの処理を終了すると、属性の値は有効になり、candle問題なく受け入れられます。

追加するために編集: この質問とその回答は素晴らしいWiXリソースです。

于 2012-09-03T11:23:38.353 に答える