問題を解決しました。以下は私が間違っていたこととそれを解決するために私がしたことの説明です
インストーラー(.msi)を作成し、次のcmdlineargsを使用して起動しました
msiexec -i prog.msi DEBUGPROPERTY = True
このプロパティが設定されているかどうかに応じてインストールされるコンポーネントを含むいくつかのマージモジュールがあり、そのようにプロパティが注入されていました...
<Merge
Id="SomeID"
Language="1033"
SourceFile="Module.msm"
DiskId="1">
<ConfigurationData
Name="debugProperty"
Value="[DEBUGPROPERTY]" />
私が欠けていたのはマージモジュール(.msm)にありました私は次のコードが必要でした
<Configuration Name='debugProperty' Format='Text' DefaultValue='[DEBUGPROPERTY]'/>
<Substitution Table='CustomAction' Row='setDebugProperty' Column='Target' Value='[=debugProperty]'/>
<CustomAction Id='setDebugProperty' Property='DEBUGPROPERTY' Value='[DEBUGPROPERTY]'/>
<InstallExecuteSequence>
<Custom Action='setDebugProperty' Before="LaunchConditions">1</Custom>
</InstallExecuteSequence>
これにより、このモジュール内のプロパティDEBUGPROPERTYにアクセスできるようになり、インストール時にファイルがインストールされたかどうかを制限できるようになりました。
<Component Id="File.pdb" Guid="SOME-GUID">
<Condition>DEBUGPROPERTY</Condition>
<File Id="File.pdb" Source="File.pdb" KeyPath="yes" Vital="no" />
</Component>
これが機能するようになり、この引数を含めると、インストール中に.pdbファイルをインストールできるようになります。