VSTO (2007 Office systemベース)のドキュメントレベルのカスタマイズをメール添付し送信した場合の問題点
VSTO のドキュメントレベルのカスタマイズをメール添付して相手に送信した場合、たとえ、VSTO のカスタマイズがインストールされていても以下のセキュリティのエラーが表示され開くことはできません。
通常このエラーは「セキュリティセンター」の「信頼できる場所」にカスタマイズアセンブリの場所の登録がない場合に発生いたしますが、Outlook の添付メールを開く一時領域の場所を「信頼できる場所」に登録しても回避できません。
以下、Outlook の添付ファイルの一時領域のパスの例です。
※パスはドキュメントのプロパティから確認できます。
Windows Vista
C:\Users\<Username>\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.Outlook\<GUID名>\2008年10月16日_001_佐藤博_第一営業部.xlsx
Windows XP
C:\Documents and Settings\<Username>\ Local Settings\Temporary Internet Files\Content.Outlook\<GUID名>\2008年10月16日_001_佐藤博_第一営業部.xlsx
理由ですが、Outlook の添付ファイルを開く一時領域の場所はセキュリティ強化の面から安全ではないファイルが一時的に置かれる可能性がある場所 (フォルダおよびサブ フォルダ) を安全な場所として [信頼できる場所] に登録することはできないため。ファイルを開いた場合に一時ファイルが作成される可能性がある Temp フォルダ、メールの添付ファイルのキャッシュや Internet Explorer からダウンロードしたコンテンツの一時ファイルが保存される Internet Temporary Files フォルダ、ドライブなどが登録不可対象の場所となるためだそうです。
OBA のシナリオでは SharePoint のメール通知機能などを利用して VSTO のカスタマイズの場所をリンクとして通知することがあります。
同様に添付ファイルとしても利用することはあると思うのですが、どう考えてもこの仕様はセキュリティ設定の競合じゃないかなと。
なんとかなんないものでしょうか。
でも、さすがにこれは難しいかなー。
ちなみに Outlook の一時ファイルの情報は以下が参考になるかと思います。
Outlook 2003 または Outlook 2007 を終了しても、Outlook のセキュリティで保護された一時ファイル フォルダに添付ファイルが残る