2017-05-12 19 views
0

NSISインストーラ/アンインストーラを使用して現在のユーザーのみのアプリケーションをインストールしています。 HKCUには、アプリケーションをコントロールパネルに表示させるためのレジストリがあります。それは完璧に機能します。ただし、コントロールパネルからアプリケーションをアンインストールしようとすると、管理者権限のポップアップボックス(AUCのもの)がポップアップされ、アンインストーラが管理者として実行されます。したがって、HKCUはユーザーアカウントではなく管理者アカウントに関連しています。このようにして、ユーザーは管理アプリケーションをアンインストールできます!ユーザーが管理者権限なしでアプリケーションをアンインストールできるようにする必要があります。NSIS経由でアンインストールする場合、Windowsのコントロールパネルに管理者権限が必要です

私は既に使用しています!include MultiUser.nsg他私はそれが可能であることを知っているので、ユーザーレベル(管理者特権を必要としない)でコントロールパネルからいくつかのランダム/デフォルトのMSアプリケーションをアンインストールすることも可能であることに気づいた。

+0

Windows版?これがWindows 10の場合は、設定アプリを使用していますか? – Anders

+0

@アンダーはい、それはWin10です。しかし、「設定アプリを使用する」とはどういう意味ですか? – Spiralwise

+0

@HarryJohnstonはい、それはアンインストーラを直接使用するときの作業です。しかし、通常のアプリケーションのようにコントロールパネルを使用できるようにしたいと考えています。 – Spiralwise

答えて

0

旧式のコントロールパネルの古い「プログラムと機能」からアンインストールすると、UACプロンプトが表示されなくてもうまく動作します。私はこれでWindowsの10.0.16184上でテスト: :

InstallDir $Temp\Test 
RequestExecutionLevel user 

Section 
SetOutPath "$InstDir" 
WriteUninstaller "$InstDir\Uninst.exe" 
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS_W10_HKCU_Test" "DisplayName" "NSIS W10 HKCU Test" 
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS_W10_HKCU_Test" "UninstallString" '"$InstDir\Uninst.exe"' 
SectionEnd 

Section Uninstall 
DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS_W10_HKCU_Test" 
Delete "$InstDir\Uninst.exe" 
RMDir "$InstDir" 
SectionEnd 

Classic ARP

しかしknownissueあなたが設定アプリで同じことを行うならば、それもHKCUのアンインストーラのためにUACの昇格を強制されますがありますModern ARP

設定アプリのこの問題は数年前から存在していましたが、マイクロソフトが気にかけているとは思いません。

関連する問題