2

アプリケーションをEドライブ(E:\ MyApp)にインストールしたい場合はDドライブ(D:\ MyApp)、Dドライブもターゲットコンピューターに存在しない場合はCドライブ(C :\ MyApp)。ドライブの存在を確認するために、プリプロセッサでどの変数を使用する必要がありますか?誰か助けてもらえますか?

<?if E Drive exists ?> 
<?define varRootDrive = "E:\" ?> 
<?elseif  D Drive exists ?> 
<?define varRootDrive = "D:\" ?> 
<?else ?> 
<?define varRootDrive = "C:\" ?> 
<?endif ?> 
<?endif ?> 

<Property Id="TARGETDIR"> $(var.varRootDrive) </Property>
4

1 に答える 1

1

プリプロセッサステートメントは、インストール時ではなくビルド時に評価されます。有効なドライブ文字が存在するかどうかを検出し、インストール時にインストール場所を動的に設定するには、カスタムアクションが必要になります。

于 2013-01-23T18:34:00.577 に答える