Microsoft Office2003のVSTO開発を行うこととなったため、
その開発・利用環境を考えた時のメモ。
■利用イメージ
イメージ図は下記の通り。
■環境整備
それぞれに必要な環境を整備。
1.開発
- VisualStudio 2008 Professional
下記の通り、Office2003の開発はVisualStudio2010での開発はできないので、注意。
さらに、VisualStudio2008でも、Professionalエディションのみ開発可能(TeamEditionは除く)。
MSDNライブラリ - Office ソリューションを開発できるようにコンピューターを構成する(VS2010)
MSDNライブラリ - Visual Studio Tools for Office のインストール(VS2008)
- Office2003 Professional (単体Excelなどでも可)
サービスパック付を推奨されています。
MSDNライブラリ - 方法 : Microsoft Office 2003 を対象とする開発用に Visual Studio Tools for Office をインストールする
なくても開発はできますが、後述するセキュリティ関係の設定・確認をする際、
GUIにて行うことができるようになりますので、あると便利です。
このツールは「.NET Framework 2.0 SDK」に含まれますので、以下よりダウンロードします。
なお、x86とx64がありましたが、手元のWindows7x64は、x86のSDKで動いています。
.NET Framework デベロッパーセンター - .NET Framework2.0
2.NAS
- 開発・ユーザがアクセスできる共有フォルダ
作成したVSTO系アプリの発行先の共有フォルダを作成。
3.ユーザ
- Office2003 Professional (単体Excelなどでも可)
Standardエディションは無理(これが一番厳しい制限かも)。
インストールオプションを「完全」としない場合は、
「Visual Basic for Applications (VBA)」は確実にインストール。
- .NET Framework2.0 以降
LINQを使うなら、3.5以降。
- Office 2003 製品用のプライマリ相互運用機能アセンブリ
Office2003を完全インストールした場合は導入済のはず。
なければ、以下を参考に手動ダウンロード(英語版でもOK)。
MSDNライブラリ - 方法 : Office のプライマリ相互運用機能アセンブリをインストールする
アセンブリ内容の一覧は以下。
MSDNライブラリ - Office プライマリ相互運用機能アセンブリ
- Office2003用Visual Studio 2005 Tools for Office Second Edition Runtime
Office2003のインストール後にインストールする必要があるようです。
MSDNライブラリ - 方法 : Visual Studio Tools for Office ランタイムをインストールする
開発と同様の理由で挙げておきます。
■注意
- ClickOnceでの配布はできない
VisualStudioでの発行はできますが、ClickOnceは使えないようです。残念。
使えるのはOffice2007以降のVSTO開発のようです。
VSTOみちしるべ - ClickOnce を利用した Office ソリューションの発行とインストール、そして、署名について
- 複数のOfficeをインストールした環境では利用できない(らしい)
手元ではWindows7x64に2010と2003が、WindowsXPx86に2002〜2010があり、動作しています。
ただし、公式サポートはないようです。
・MSDNライブラリ - 複数バージョンの Microsoft Office のソリューションの作成
・MSDN Blog Andrew Whitechapel - Why is VS development not supported with multiple versions of Office?
・マイクロソフト KB828956 - 複数のバージョンの Office を Office 2003 と併用することに関する情報
- 共同開発の注意事項
デバッグプロパティ、バージョン管理、セキュリティについてまとめられています。
MSDNライブラリ - Office ソリューションの共同開発
■その他
手元のWindows7x64やWindowsXPx86では、以下のフォルダにありました。
.NETのバージョン | パス |
2.0 | %SystemRoot%\Microsoft.NET\Framework\v2.0.50727 |
4.0 | %SystemRoot%\Microsoft.NET\Framework\v4.0.30319 |
なお、詳しい使い方は以下を参照。
MSDNライブラリ - コード アクセス セキュリティ ポリシー ツール (Caspol.exe)
- MSDNライブラリでまとめられたもの
方法 : Office ソリューションを実行できるようにエンド ユーザーのコンピュータを準備する (2003 システム)
- VSTOのバージョンと、開発できるOffice、必要な.NET Frameworkのまとめ
Mary Lee MSFT - Deploying Office Solutions to End User Computers
- 詳しいBlogやフォーラム
以下のBlogやフォーラムが頼りになります。
・松崎剛Blog
・VSTO みちしるべ
・こだかたろうです
・MSDN Blog - Office Development with Visual Studio (英語)
・MSDN Blog - Misha Shneerson (英語)
・Visual Studio Tools for Office フォーラム
・Googleグループ - microsoft.public.vsnet.vstools.office (英語)
調べれば調べるほど、Office2003ではなくOffice2010で
VSTO開発をしたいと感じるようになりました。