ClickOnce でアプリケーションと .NET FrameWork や VSTO ランタイムを同時に配置する際の必要な権限について

これは、Tech-ED のセッション終了後にご質問いただいた件です。

このあたりは .NET アプリの配置・更新のお作法になりますが、

対象アプリと一緒に .NET FrameWork や VSTO ランタイムを配置する際のユーザー権限は管理権限が必要です。

VSTO においても同様になります。

ですので、あらかじめ配置しておくなどの処置が必要になります。

配置の必要条件 (Visual Studio)

http://msdn.microsoft.com/ja-jp/library/77z6b8tz(VS.80).aspx

下記、抜粋です。

ブートストラップ コンポーネントをインストールするには、コンピュータ上で管理者または同様の特権が必要な場合があります。ClickOnce アプリケーションの場合、これは、アプリケーションが指定するセキュリティ レベルにかかわらず、インストールには管理権限が必要な場合があることを意味します。インストール後は、管理権限なしでアプリケーションを実行できます。

アプリだけだと、ClickOnce のみでシステム権限でインストール可能です。

なので、コンポーネントを含めても、システム権限でインストールできると思われがちなので、気をつけないといけませんね。ここは。

ClickOnce の配置の概要

http://msdn.microsoft.com/ja-jp/library/142dbbz4(VS.80).aspx

下記、抜粋です。

セキュリティ アクセス許可。Windows インストーラの配置には管理者権限が必要で、一部のユーザーだけがインストールを許可されます。ClickOnce の配置では管理者権限を持たないユーザーがアプリケーションをインストールでき、アプリケーションに必要なコード アクセス セキュリティのアクセス許可だけが付与されます。