2016-05-10 8 views
1

私のWiXインストーラでは、既存のインストーラを置き換える必要があります。WiX Bootstrapper(burn)のini値を読み取る

現在のインストーラは、バージョン番号などを.iniファイルに書き込みます。 WiXインストーラが実行されると、現在インストールされているバージョンとインストールするバージョンを表示する必要があります。

私は今すぐインストールページのために、次のいる:

<Page Name="Install"> 
    <Text X="11" Y="-73" Width="246" Height="17" FontId="3">Currently installed version:</Text> 
    <Text X="11" Y="-73" Width="246" Height="17" FontId="3">CURRENT VERSION</Text> 
    <Text X="11" Y="-73" Width="246" Height="17" FontId="3">Version to be installed:</Text> 
    <Text X="11" Y="-73" Width="246" Height="17" FontId="3">#(loc.InstallVersion)</Text> 
    <Button Name="InstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallInstallButton)</Button> 
    <Button Name="WelcomeCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallCloseButton)</Button> 
</Page> 

この正常にインストールされるバージョンが表示されます。しかし、私は現在のバージョンも表示したい。

私のインストーラは、バージョンをレジストリとiniファイルに書き込みます。これは、ソフトウェアがiniファイルを使用するときに行わなければなりません。

私の質問は次のとおりです。 WiX Bootstrapper(Burn)でini値を読み取るにはどうすればよいですか?

+0

iniファイルを読み込んで変数を設定したり、iniファイルを読み込む独自のExtentionを書き込むためには、独自の(またはwixstdbaの編集)ブートストラップアプリケーションを作成する必要があります。すでに誰かが拡張機能を書いているのでしょうか? –

答えて

1

.iniファイルを読み込んで解析し、MSIエンジンに新しいプロパティを提供する独自のCustomActionライブラリ(C++または.NET)を作成できます。

Burnブートストラップをカスタマイズしなければならない場合、MSIのCustomActionを使用してカスタムブートを実行できない場合は、WiX BA SDKを使用して独自のBoostrapperアプリケーションを作成する必要があります。

+0

答えは良いですが、今ははるかに高速に見えるバットファイルを使用しました –

1

レジストリ値があるので、RegistrySearchを使用してレジストリ値を変数に読み込み、値を表示するには[VariableName]を入力します。 Burnは.iniファイルの直接読み込みをサポートしていません。

関連する問題