3

Wix3.6を使用してセットアップを作成しています。私は歩きながらまだ学んでいます。そこにある情報はまだ散らばっています。Wix開発者ガイドブックが届くのを待っています。

現在、ユーザーがアプリケーション構成を入力するカスタムUIダイアログがあります。その構成の一部は、ログフォルダーを指定することです。これは現在、プロパティ[LogFolder]を設定するだけです。これはデフォルトでD:\Logsのようなものになります。

セットアップの実行時にインストーラーにそのディレクトリを作成してもらいたい。これを試すには次の方法がありますが、セットアップを実行すると、D:ドライブに[LOGFOLDER]という名前のフォルダーが作成されました。

<Product ...
    <Directory Id="TARGETDIR" Name="SourceDir" >
        <Directory Id="LogFolderDir" Name="[LOGFOLDER]" >
            <Component Id="LogFolderComponent" Guid="{7E7D6916-B321-40D6-ABAD-696B57A6E5FB}" KeyPath="yes">
                <CreateFolder />
            </Component>
        </Directory>
    </Directory>
    ...
</Product>

Wixでこれを行うにはどうすればよいですか?

4

3 に答える 3

1

Name 属性は書式設定できないため、プロパティを使用できます。Id「LogFolderDir」には「ProgramFilesFolder」などの親がないため、デフォルトでディスク容量が最大のボリュームになります。この場合は D ですが、YMMV です。

D: が存在しない可能性があるため、デフォルトを D: にするのは危険です。このディレクトリを設定する方法は Id="LOGDIR" Name="Logs" で、INSTALLDIR/INSTALLLOCATION ディレクトリ要素の子にします。次に、カスタム UI で、別の BrowseFolder ダイアログを接続して、ユーザーがオーバーライドできるようにします。または、必要なログ機能に関連付けて、ストック機能選択ダイアログを使用して機能を選択し、宛先フォルダーを参照できるようにします。

それでも D:\Logs を「デフォルト」にしたい場合は、D: が存在し、固定ディスクであるかどうかを確認するカスタム アクションを用意します。その場合は、LOGDIR=D:\Logs を設定します。

于 2012-09-18T15:44:28.377 に答える