Share via


チュートリアル: 初めての Project 用 VSTO アドインを作成する

このチュートリアルでは、Microsoft Office Project 用の VSTO アドインを作成する方法について説明します。 この種のソリューションに作成した機能は、どのプロジェクトが開いているかにかかわらず、アプリケーション自体に対して使用できます。 詳細については、「Office ソリューションの開発の概要 (VSTO)」を参照してください。

対象: このトピックの情報は、Project の VSTO アドインのプロジェクトに適用されます。 詳細については、「Office アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。

このチュートリアルでは、次の作業について説明します。

  • Project VSTO アドイン プロジェクトを作成する。

  • Project のオブジェクト モデルを使用して、新しいプロジェクトにタスクを追加するコードを記述する。

  • プロジェクトをビルドし、実行してテストする。

  • 完成したプロジェクトをクリーンアップして、開発用コンピューターでこの VSTO アドインが自動的に実行されないようにする。

    Note

    次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。 詳細については、「Visual Studio IDE のカスタマイズ」を参照してください。

必須コンポーネント

このチュートリアルを実行するには、次のコンポーネントが必要です。

プロジェクトを作成する

Visual Studio で新しいプロジェクトを作成するには

  1. Visual Studio を起動します。

  2. [ファイル] メニューの [新規作成] をポイントし、 [プロジェクト] をクリックします。

  3. テンプレート ペインで、 [Visual C#] または [Visual Basic]を展開してから、 [Office/SharePoint]を展開します。

  4. 展開した [Office/SharePoint] ノードの下で、 [Office Add-ins] ノードを選択します。

  5. プロジェクト テンプレートの一覧で、 [Project 2010 アドイン] または [Project 2013 アドイン]を選びます。

  6. [名前] ボックスに「 FirstProjectAddIn」と入力します。

  7. OK をクリックします。

    Visual Studio により FirstProjectAddIn プロジェクトが作成され、ThisAddIn コード ファイルがエディターで開かれます。

プロジェクトに新しいタスクを追加するコードを記述する

次に、ThisAddIn コード ファイルにコードを追加します。 新しいコードでは、Project のオブジェクト モデルを使用して、プロジェクトに新しいタスクを追加します。 ThisAddIn コード ファイルには、次の生成コードが既定で含まれています。

  • ThisAddIn クラスの部分定義。 このクラスは、コードのエントリ ポイントを提供し、Project のオブジェクト モデルへのアクセスを提供します。 詳しくは、「VSTO アドインのプログラミング」をご覧ください。ThisAddIn クラスの残りの部分は、変更することができない非表示のコード ファイルに定義されています。

  • ThisAddIn_Startup および ThisAddIn_Shutdown イベント ハンドラー。 これらのイベント ハンドラーは、Project が VSTO アドインを読み込むときとアンロードするときに呼び出されます。 これらのイベント ハンドラーを使用して、VSTO アドインを読み込むときに初期化し、VSTO アドインがアンロードされるときには使用したリソースをクリーンアップします。 詳細については、「Office プロジェクトのイベント」を参照してください。

新しいプロジェクトにタスクを追加するには

  1. 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 ソリューション」をご覧ください。

  1. C# を使用する場合は、次のコードを ThisAddIn_Startup イベント ハンドラーに追加します。 このコードでは、Application_Newproject イベント ハンドラーを NewProject イベントに接続します。

    this.Application.NewProject += new Microsoft.Office.Interop.MSProject._EProjectApp2_NewProjectEventHandler(Application_NewProject);
    

プロジェクトをテストする

プロジェクトをビルドして実行し、新しいプロジェクトに新しいタスクが表示されることを確認します。

プロジェクトをテストするには

  1. F5 キーを押して、プロジェクトをビルドおよび実行します。 Microsoft Project が起動し、新しい空のプロジェクトが自動的に開きます。

    プロジェクトをビルドすると、プロジェクトのビルド出力フォルダーに含まれるアセンブリにコードがコンパイルされます。 さらに Visual Studio は、Project が VSTO アドインを検出して読み込めるようにする一連のレジストリ エントリを作成し、VSTO アドインを実行できるように開発用コンピューター上のセキュリティを設定します。 詳細については、「Office ソリューション ビルド処理の概要」を参照してください。

  2. 新しいタスクが空のプロジェクトに追加されることを確認します。

  3. 次のテキストがタスクの [タスク名] フィールドに表示されることを確認します。

    This text was added by using code.

  4. Microsoft Project を閉じます。

プロジェクトをクリーンアップする

プロジェクトの開発が完了したら、VSTO アドイン アセンブリ、レジストリ エントリ、およびセキュリティ設定を開発用コンピューターから削除します。 この操作を行わないと、開発用コンピューター上で Microsoft Project を起動するたびに VSTO アドインが実行されます。

プロジェクトをクリーンアップするには

  1. Visual Studio で、 [ビルド] メニューの [ソリューションのクリーン]をクリックします。

次のステップ

これで Project 用の基本的な VSTO アドインの作成が完了しました。VSTO アドインの開発方法について詳しくは、次に示すトピックをご覧ください。