質問: Windowsインストーラのベストプラクティス:管理者、非管理者、またはその両方? 私のアプリケーションの1つにWindows版があり、NSISを使用してインストーラを作成し、現在のバージョンを「プログラムファイル」にインストールします。 インストーラが管理者として実行され、一部のユーザー(エンタープライズPC ...)に問題が発生する可能性があることを理解しています。 この種のインストーラのWindowsのベストプラクティスは何ですか?ユーザーを強制的に管理者にする他の場所にインストールするオプションを提供しますか? (私はUNIX/Macの人だから、Windowsのアプリケーションについては本当に福音を知らない) Here is the NSIS script in case someone want to have a look:
回答: Windowsでは一般に、ソフトウェアをインストールするには管理者アクセス権が必要です。企業は実際にこの機能を好んでいます。特定の人が会社の許可なくソフトウェアをインストールすることができないからです。ソフトウェアは通常、プログラムファイルまたはプログラムファイル(x86)ディレクトリに移動する必要があり、意図的に管理者アクセスが必要です。 このルールにはいくつかの例外がありますが、まれです。ユーザーあたりのソフトウェアを安全にインストールするには、次のことを保証する必要があります。 1)インストーラは、Program Files(または他のマシン全体の場所)以外の場所から機能することができます。 2)ソフトウェア自体はマシン全体の場所に書き込まれません。 3)マシン全体のレジストリの場所(HKEY_LOCALMACHINEなど)には何も書き込まない。 正直なところ、これはもっと複雑な問題です。それは本当にあなたがやっていることにかかっています。クリック一回インストールで逃げることができれば、それが最善の策かもしれません。部分的な信頼でこれを行うことができます。つまり、管理者のアクセスを必要とせず、ユーザー。