チュートリアル: 初めての Project 用 VSTO アドインを作成する
このチュートリアルでは、Microsoft Office Project 用の VSTO アドインを作成する方法について説明します。 この種のソリューションに作成した機能は、どのプロジェクトが開いているかにかかわらず、アプリケーション自体に対して使用できます。 詳細については、「Office ソリューションの開発の概要 (VSTO)」を参照してください。
対象: このトピックの情報は、Project の VSTO アドインのプロジェクトに適用されます。 詳細については、「Office アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。
このチュートリアルでは、次の作業について説明します。
Project VSTO アドイン プロジェクトを作成する。
Project のオブジェクト モデルを使用して、新しいプロジェクトにタスクを追加するコードを記述する。
プロジェクトをビルドし、実行してテストする。
完成したプロジェクトをクリーンアップして、開発用コンピューターでこの VSTO アドインが自動的に実行されないようにする。
Note
次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。 詳細については、「Visual Studio IDE のカスタマイズ」を参照してください。
必須コンポーネント
このチュートリアルを実行するには、次のコンポーネントが必要です。
Microsoft Office Developer Tools が含まれている Visual Studio のエディション。 詳細については、「Office ソリューションを開発できるようにコンピューターを構成する」を参照してください。
Project 2013 か Project 2010。
プロジェクトを作成する
Visual Studio で新しいプロジェクトを作成するには
Visual Studio を起動します。
[ファイル] メニューの [新規作成] をポイントし、 [プロジェクト] をクリックします。
テンプレート ペインで、 [Visual C#] または [Visual Basic]を展開してから、 [Office/SharePoint]を展開します。
展開した [Office/SharePoint] ノードの下で、 [Office Add-ins] ノードを選択します。
プロジェクト テンプレートの一覧で、 [Project 2010 アドイン] または [Project 2013 アドイン]を選びます。
[名前] ボックスに「 FirstProjectAddIn」と入力します。
OK をクリックします。
Visual Studio により FirstProjectAddIn プロジェクトが作成され、ThisAddIn コード ファイルがエディターで開かれます。
プロジェクトに新しいタスクを追加するコードを記述する
次に、ThisAddIn コード ファイルにコードを追加します。 新しいコードでは、Project のオブジェクト モデルを使用して、プロジェクトに新しいタスクを追加します。 ThisAddIn コード ファイルには、次の生成コードが既定で含まれています。
ThisAddIn
クラスの部分定義。 このクラスは、コードのエントリ ポイントを提供し、Project のオブジェクト モデルへのアクセスを提供します。 詳しくは、「VSTO アドインのプログラミング」をご覧ください。ThisAddIn
クラスの残りの部分は、変更することができない非表示のコード ファイルに定義されています。ThisAddIn_Startup
およびThisAddIn_Shutdown
イベント ハンドラー。 これらのイベント ハンドラーは、Project が VSTO アドインを読み込むときとアンロードするときに呼び出されます。 これらのイベント ハンドラーを使用して、VSTO アドインを読み込むときに初期化し、VSTO アドインがアンロードされるときには使用したリソースをクリーンアップします。 詳細については、「Office プロジェクトのイベント」を参照してください。
新しいプロジェクトにタスクを追加するには
ThisAddIn コード ファイルで、次のコードを
ThisAddIn
クラスに追加します。 このコードでは、NewProject
クラスのMicrosoft.Office.Interop.MSProject.Application
イベントのイベント ハンドラーを定義します。ユーザーが新しいプロジェクトを作成すると、このイベント ハンドラーによってタスクがプロジェクトに追加されます。
void Application_NewProject(Microsoft.Office.Interop.MSProject.Project pj) { MSProject.Task newTask = pj.Tasks.Add ("This text was added by using code", missing); newTask.Start = DateTime.Now; newTask.Duration = "3"; newTask.ResourceNames = "Rob Caron, Kelly Krout"; }
プロジェクトを変更するため、このコード例では次のオブジェクトを使用しています。
Application
クラスのThisAddIn
フィールド。Application
フィールドは、Project の現在のインスタンスを表すMicrosoft.Office.Interop.MSProject.Application
オブジェクトを返します。NewProject イベントのイベント ハンドラーの
pj
パラメーター。pj
パラメーターは、プロジェクトを表すMicrosoft.Office.Interop.MSProject.Project
オブジェクトです。 詳しくは、「Project ソリューション」をご覧ください。
C# を使用する場合は、次のコードを
ThisAddIn_Startup
イベント ハンドラーに追加します。 このコードでは、Application_Newproject
イベント ハンドラーを NewProject イベントに接続します。this.Application.NewProject += new Microsoft.Office.Interop.MSProject._EProjectApp2_NewProjectEventHandler(Application_NewProject);
プロジェクトをテストする
プロジェクトをビルドして実行し、新しいプロジェクトに新しいタスクが表示されることを確認します。
プロジェクトをテストするには
F5 キーを押して、プロジェクトをビルドおよび実行します。 Microsoft Project が起動し、新しい空のプロジェクトが自動的に開きます。
プロジェクトをビルドすると、プロジェクトのビルド出力フォルダーに含まれるアセンブリにコードがコンパイルされます。 さらに Visual Studio は、Project が VSTO アドインを検出して読み込めるようにする一連のレジストリ エントリを作成し、VSTO アドインを実行できるように開発用コンピューター上のセキュリティを設定します。 詳細については、「Office ソリューション ビルド処理の概要」を参照してください。
新しいタスクが空のプロジェクトに追加されることを確認します。
次のテキストがタスクの [タスク名] フィールドに表示されることを確認します。
This text was added by using code.
Microsoft Project を閉じます。
プロジェクトをクリーンアップする
プロジェクトの開発が完了したら、VSTO アドイン アセンブリ、レジストリ エントリ、およびセキュリティ設定を開発用コンピューターから削除します。 この操作を行わないと、開発用コンピューター上で Microsoft Project を起動するたびに VSTO アドインが実行されます。
プロジェクトをクリーンアップするには
- Visual Studio で、 [ビルド] メニューの [ソリューションのクリーン]をクリックします。
次のステップ
これで Project 用の基本的な VSTO アドインの作成が完了しました。VSTO アドインの開発方法について詳しくは、次に示すトピックをご覧ください。
Project 用の VSTO アドインで実行できる一般的なプログラミング タスク: VSTO アドインのプログラミング。
Project のオブジェクト モデルの使用法: Project ソリューション。
Project 用 VSTO アドインのビルドとデバッグ: Office ソリューションのビルド。
Project 用の VSTO アドインの配置: Office ソリューションを配置する。