起動条件はどうなっていますか? x86インストーラが64ビットシステムで動作しないようになっていますが、効果がないようです。64ビットシステムで64ビットインストーラを使用するための起動条件
<!-- Launch Condition to check that x64 installer is used on x64 systems -->
<Condition Message="64-bit operating system was detected, please use the 64-bit installer.">
<![CDATA[VersionNT64 AND ($(var.Win64) = "no")]]>
</Condition>
var.Win64
は、このようなMSBuildの変数から導出されます。
<!-- Define platform-specific names and locations -->
<?if $(var.Platform) = x64 ?>
<?define ProductName = "$(var.InstallName) (x64)" ?>
<?define Win64 = "yes" ?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
<?define PlatformCommonFilesFolder = "CommonFiles64Folder" ?>
<?else ?>
<?define ProductName = "$(var.InstallName) (x86)" ?>
<?define Win64 = "no" ?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
<?define PlatformCommonFilesFolder = "CommonFilesFolder" ?>
<?endif ?>
私は私の問題を解決したいと思いますが、私はまた、この種の問題のトラブルシューティングのための戦略について聞いて興味があると思います。 LaunchCondition table定義によると
64ビットパッケージでは、32ビットシステムでアボートする前にLaunchConditionsを取得できないことに注意してください。だから、その事件のメッセージをもっと良くする必要はありません。 –
右ヒントありがとう、マイケル!私は私の答えを更新します... –
@ヤン、返信ありがとうございます。私はあなたが正しくあなたを理解していることを絶対に確信させてください、あなたが言っていることは、私が自分の状態で単純な論理エラーを作りましたと思います。今私はそれを見て、私は私の間違いを見ると思う。あなたの書き直し版だけでなく、「いいえ」から「はい」に変更するだけで問題が解決されると思うのは正しいでしょうか?だから、私は残す: 'VersionNT64 AND($(var.Win64)="はい ")' –