0

asp.net アプリケーション用の WIX セットアップがあります。ユーザーは、アプリ プールをビルトイン アカウントまたはカスタム アカウントのどちらで実行するかを選択できます (IIS の詳細アプリ プール設定 > ID と同様)。

ユーザーがセットアップを完了した後、セットアップは、ユーザーがビルドイン アカウントまたはカスタム アカウントを選択したかどうかを確認する必要があります。ユーザーは、セットアップ中に次のプロパティを設定しました。

USE_BUILTIN_ACCOUNT : ユーザーがビルトイン アカウントを選択した場合は true、それ以外の場合は false

BUILTIN_ACCOUNT : 選択したビルトイン アカウントの名前

IDENTITY_NAME : カスタム ユーザーの名前

現在、セットアップはカスタム名でのみ機能します。

<Component Id="myAppPoolCmp" Guid="" KeyPath="yes">
    <util:User Id="myAppPoolUser" CreateUser="no" Name="[IDENTITY_NAME]" Password="[IDENTITY_PWD]" Domain="[IDENTITY_DOMAIN]" />
</Component>

USE_BUILTIN_ACCOUNTの値に基づいて、組み込みアカウントまたはカスタム アカウントの名前を使用するように、セットアップを変更するにはどうすればよいですか?

4

2 に答える 2

1

問題の解決策を見つけました。

次のコードは私にとってはうまくいきます:

<Component Id="sMatSupervisorAppPoolCmpBuiltIn" Guid="" KeyPath="yes">
    <Condition><![CDATA[WEB_APP_POOL_USE_BUILTIN_ACCOUNT = "true"]]></Condition>
     <util:User Id="sMatSupervisorAppPoolUserBuiltIn" CreateUser="no" Name="[WEB_APP_POOL_BUILTIN_ACCOUNTS]" />
    <iis:WebAppPool Id="x" Name="[WEB_APP_NAME]" Identity="other" User="y" />
</Component>

<Component Id="sMatSupervisorAppPoolCmp" Guid="" KeyPath="yes">
    <Condition><![CDATA[WEB_APP_POOL_USE_BUILTIN_ACCOUNT <> "true"]]></Condition>
    <util:User Id="sMatSupervisorAppPoolUser" CreateUser="no" Name="[WEB_APP_POOL_IDENTITY_NAME]" Password="[WEB_APP_POOL_IDENTITY_PWD]" Domain="[WEB_APP_POOL_IDENTITY_DOMAIN]" />
    <iis:WebAppPool Id="x" Name="[WEB_APP_NAME]" Identity="other" User="y" />
</Component>
于 2013-10-25T09:13:40.173 に答える
0

セットアップが終了するまで待って、ユーザーに何をしたいかを尋ねることはできません。インストール トランザクションが開始される前に、UI で前もって実行する必要があります (すべてのデータを収集し、ポイント オブ ノー リターン )。

実装するには、コンポーネント条件を使用して相互に排他的なコンポーネントを作成する可能性があります。

于 2013-10-14T15:38:04.110 に答える