/のドキュメントは少しわかりにくいです。については、次のように述べています。if
ifdef
<?if [expression] ?>
- 変数を使用して存在を確認できます
...- 変数が存在しない場合、評価は失敗し、エラーが発生します。
あなたがただ行った場合、それは判明しました: <?if $(env.MY_VAR) ?>
andMY_VAR
が定義されていない場合、コンパイルは失敗します。存在を確認するにはどうすればよいですか?
通常、これは を使用する場所ですifdef
が、これらは Wix でも奇妙に機能します。$(var.Variable)
構文を使用する代わりに を使用します<?ifdef Variable?>
。つまり、この方法では環境変数をチェックできません。
通常の C プリプロセッサと同等のものを取得するには、次のことを行う必要があります。
#ifdef MY_ENVIRONMENT_VARIABLE
ウィックスで?