2017-08-07 21 views
0

へのアクセスここで述べたように:私は管理者権限とセッションデータへアクセスして、カスタムアクションにを実行することができないんだhttps://blogs.msdn.microsoft.com/astebner/2006/12/14/some-useful-things-i-have-learned-about-windows-installer-and-uac/WIX:*管理者権限を持つのCustomAction * *と*セッション

を(FE必要なレジストリキーまたはパスを取得する)。私のカスタムアクションの管理権限を得るための唯一の方法は、このアクションを延期または即時ではなくコミットとして実行することです(Action-CallのExecute-Property)。私は今では理解何

これです:私は私の背景をモデル化する必要がある

WIX-インストールシステムに背景知識をモデル化する方法がないので(FEように私は、Microsoft Officeアドインをインストールしたいです)手続き型C#コードを作成することによって、 (あるいはそうではありませんか?)なぜ私は管理権限を必要としませんか?

私が何かを見落とした場合は教えてください。私はこの間違いに近づいていますか?

+0

マイケルは言うとおり、たとえば、レジ​​ストリ検索でHKCUレジストリ項目を取得するのは簡単です。また、多くのユーザーパスはAppDataFolder、DesktopFolderなどのプロパティで使用できます。 – PhilDW

答えて

0

情報が平滑化されていない状態から上昇している状態に、または高い状態から不安定状態に戻る方法を探しているかどうかは不明です。後者は不可能です。前者はCustomActionDataを使用します。

しかし、推薦として、データ駆動型のプロシージャコード(Windowsインストーラでの再利用に役立ちます)を優先し、カスタムに組み込むことをお勧めします。 (プロパティを設定し、そのプロパティに基づいてレジストリキーを定義することはできますか?その場合、Windowsインストーラはすべての重い作業を行います)

+0

悲しいことに、これらのディレクトリが存在するかどうかに基づいて、複数のディレクトリに同じファイルを置く必要があります(具体的には、Microsoft Excelのアドインをインストールしたいのですが。 )は、 "OfficeXX.X"という名前のフォルダに "XLSTART"という名前のフォルダに置くことでインストールされます。 wixのマークアップでこれを行う方法が見つかりませんでした – Ravior

+0

[SetDirectory](http://wixtoolset.org/documentation/manual/v3/xsd/wix/setdirectory.html)カスタムアクションを探している可能性があります。これは、指定された[Directory](http:// wixtoolset.org/documentation/manual/v3/xsd/wix/directory.html)を実行時に実行します。 –

関連する問題