以下のステートメントを参照してください。とりあえず、MSIのセットアッププロジェクトにソースフォルダーと宛先フォルダー(このフォルダーはインストールプロセス中に形成されます)をハードコーディングしました。注:以下のファイルパスは、MSIパッケージのインストール先であり、ソースの場所ではありません。[INSTALLLOCATION] \App_Config\のようなハードコードされた値を非表示にして宛先またはソースのプロパティ値を設定する方法に関する質問
現在、コマンドラインからINSTALLLOCATION(E:\ Websites \ SCBUDirect \ Website \ SCBUDirect.B2CWeb)を渡しており、宛先フォルダーの値を[INSTALLLOCATION] \ App_Config \として設定したいのですが、プロパティ設定でどのように実装できるかわかりません。または、試したが機能しなかったカスタムアクション。
以下は、コピーする必要のあるファイルのコンポーネントのスニペット(heat.exeから)です。
<Component Id="cmp209B0DBB82F9FF15193D29F0BD337B7F" Directory="dirB0A921E55A598C65B18B4E47885629C3" Guid="{3B140259-FCC7-4D2E-8629-CBB879BBA46C}">
<File Id="filBC5CC5B8DCC504F6DC75A7B2673E7D0D" KeyPath="yes" Source="C:\Workspaces\Chatra\Website\SCBUDirect.B2CWeb\App_Config\basic.log4net.dev" />
</Component>
これがproduct.wxsの私のコードの一部です
<Fragment>
<Property Id="SourceFilesFolder" Value="E:\Websites\SCBUDirect\Website\SCBUDirect.B2CWeb\App_Config\basic.log4net.dev" />
<Property Id="DestFilesFolder" Value="E:\Websites\SCBUDirect\Website\SCBUDirect.B2CWeb\App_Config\" />
<ComponentGroup Id="CopyFiles">
<ComponentRef Id="CMP_LOG4TXT" />
</ComponentGroup>
<Component Id="CMP_LOG4TXT" Guid="341BD660-7249-42DD-9744-DBEF0776AD52" Directory="INSTALLLOCATION" KeyPath="yes">
<CopyFile Id="Copy_LOG4TXT"
SourceProperty="SourceFilesFolder"
DestinationProperty="DestFilesFolder"
DestinationName="basic.log4net" />
</Component>
</Fragment>