Visual Studio 2008 におけるVisual Studio Tools for Office System の Click Once 配置

今回はリリース間近に迫っている Visual Studio 2008 に含まれる Visual Studio Tools for Office System (VSTO v3) から、その中で私がお勧めの機能であると思っている VSTO の ClickOnce 配置についてお話したいと思います。

今までの VSTO で Microsoft Office ソリューションを配置して実行するには、VBA マクロによるセキュリティ上の問題を解決する必要があり、ユーザーが許可したアセンブリのみ動作させるようにするため、ユーザーがコンピュータのセキュリティ ポリシーで、アセンブリに完全な信頼を付与する必要がありました。 ですから Visual Studio の発行ウィザードでソリューションをサーバーに簡単に配置できたとしても、クラインアント側では、コード アクセス セキュリティ ポリシー ツール (Caspol.exe) を使用して現在のユーザーに対するアクセス許可をアセンブリに付与する作業が発生していました。 またそのソリューションを実行するのに必要なコンポーネントである、.NET Framework や VSTO ランタイムを前もってインストールしておく必要もあり、ユーザーには多少手のかかる部分がありました。

VSTO v3 では、これらの煩わしい作業が ClickOnce を使用することで、ソリューションの配置が容易となり、コードアクセスセキュリティの設定も不要となります。 ClickOnce は Visual Studio 2005 で Windows アプリケーションなどに既に提供されておりましたが、VSTO でも Visual Studio 2008 からサポートされるようになりました。

VSTO v3 の新しいセキュリティ モデル では、今まで使用していたコード アクセス セキュリティ ポリシーとは異なり、信頼のリストと呼ばれるリストを使用し、ユーザーが発行者を特定する証明書で署名されたソリューションに信頼を付与します。信頼のリストはユーザー固有となっています。 信頼が付与されていないソリューションを実行しようとすると、ユーザーにセキュリティ上の決定を求めるClickOnce信頼プロンプトが表示されるようになっています。

発行先も、ローカル、HTTP, UNC, CD/DVD へのロケーション選択も可能ですし、必須コンポーネントはリストから選択することで自動的にセットアップパッケージに含めることが可能です。 これら一連の設定は、ソリューションプロパティページの発行ページで行い、発行が完了してしまえば、クライアント側では発行された場所から Setup.exe を実行するだけで、アプリケーションを配置することが出来ます。

このように、VSTO v3 では ClickOnce の中でセキュリティの登録、アドイン自体の登録ができるようになり、今まで VSTO v2 で配置を実行したことがある方にとっては配置コストを大幅に削減されていることがわかると思います。

以下に簡単なビデオが用意されていますので、こちらをご覧頂ければ、より一層簡単になった VSTO の配置を実感出来ることと思います。

  https://www.microsoft.com/japan/msdn/office/learning/code/vsto_addin.aspx