2

WIXインストーラーのコンポーネントにこのビットがあります

    <util:User Id="CIUSER" CreateUser="yes" UpdateIfExists="no" Name="myuser" PasswordNeverExpires="yes" Password="noneofyourbusiness">
      <util:GroupRef Id="Users" />
    </util:User>

また、これをコードの他の部分でリファレンスとして使用して、ディレクトリのアクセス許可を設定します。

製品をインストールするたびに、新しいユーザー プロファイルが作成されるようです。したがって、ID がデスクトップに配置されている場合、このユーザーとしてログインすると、インストールからインストールまで表示されません。

ほとんどの場合、システムをセットアップしている人々を支援するために、インストーラーにこのコードを入れています。これはデスクトップ アプリケーションですが、単一の「デバイス」として販売されており、一般的な使用のコンピューターではありません。アプリケーションを実行するための非特権アカウントを作成しています。

これは WIX3.5 です。誰かが前にこのようなことを見たり、私が間違っているかもしれないことを知っていますか?

ユーザーを正常に作成し、適切なアクセス許可を設定します。Windows 7 のユーザーの下に複数のプロファイルが存在するだけです。

4

1 に答える 1

4

RemoveOnUninstall属性をに設定noします。デフォルトは ですyes。実際には、インストールごとに新しいユーザーを作成しているため、プロファイルは異なります。

アンインストール時にプロファイルを削除できないことは、WiX 3.5の既知の不具合です。
属性とは無関係でありUpdateIfExists、製品をアンインストールして再インストールするか、アップグレードするかは関係ありません。

この欠陥に関するRob Mensching のメモによると、カスタム アクションのバグは WiX 4.0 までは修正されません。これはまた、すべての wixutil がカスタム アクションを使用して実装されていること、および問題が緊急である場合、ユーザー アカウントを処理するためのより優れたカスタム アクションを作成し、それをバイナリまたはスクリプトとして MSI に含めることが技術的に可能であることを思い出させてくれます。足りる。または、アンインストール時に非アクティブなユーザー プロファイルを削除するための 1 つだけかもしれません。

(この回答の功績は、主に質問の作成者が行った追加の調査によるものです。原因に対する私自身の最初のショットは間違っていることがわかりました。ありがとうございます。)

于 2012-05-03T19:27:16.960 に答える