次の方法で共有


単一ファイル ジェネレーターの登録

Visual Studio でカスタム ツールを使用できるようにするには、カスタム ツールを登録して、Visual Studio でインスタンス化し、特定のプロジェクトの種類に関連付ける必要があります。

Visual Studio のレジストリは、プライベート ハイブ (privateregistry.bin) 内にあります。 regedit.exe 開き、次の手順に従って、Visual Studio の目的のインストール用のプライベート レジストリ ハイブを読み込みます。Visual Studio インスタンスのレジストリを編集します

カスタム ツールを登録するには

  1. Visual Studio ローカル レジストリ (HKEY_LOCAL_MACHINEの下に読み込む) またはシステム レジストリの HKEY_CLASSES_ROOT で、カスタム ツール DLL を登録します。

    たとえば、Visual Studio に付属するマネージド MSDataSetGenerator カスタム ツールの登録情報を次に示します。

    [HKEY_LOCAL_MACHINE\{hive}\SOFTWARE\Microsoft\VisualStudio\17.0_**_Config\CLSID\{E76D53CC-3D4F-40A2-BD4D-4F3419755476}]
    @="COM+ class: Microsoft.VSDesigner.CodeGenerator.TypedDataSourceGenerator.DataSourceGeneratorWrapper"
    "InprocServer32"="C:\\WINDOWS\\system32\\mscoree.dll"
    "ThreadingModel"="Both"
    "Class"="Microsoft.VSDesigner.CodeGenerator.TypedDataSourceGenerator.DataSourceGeneratorWrapper"
    "Assembly"="Microsoft.VSDesigner, Version=17.0.0.0, Culture=Neutral, PublicKeyToken=b03f5f7f11d50a3a"
    

    {hive}は、レジストリ エディターにprivateregistry.binを読み込んだときに指定した名前であり、インスタンス フォルダー (17.0_**_Configとして示されています) は、コンピューター上の Visual Studio の特定のインストールに固有です。

  2. 必要な Visual Studio ハイブの Generators\GUID にレジストリ キーを作成します。 GUID は、特定の言語のプロジェクト システムまたはサービスによって定義された GUID です。 キーの名前は、カスタム ツールのプログラム名になります。 カスタム ツール キーには、次の値があります。

    • (既定値)

      Optional. カスタム ツールのわかりやすい説明を提供します。 このパラメーターは省略可能ですが、推奨されます。

    • CLSID

      必須。 IVsSingleFileGeneratorを実装する COM コンポーネントのクラス ライブラリの識別子を指定します。

    • デザイン時ソースを生成するGeneratesDesignTimeSource

      必須。 このカスタム ツールによって生成されたファイルの型をビジュアル デザイナーが使用できるかどうかを示します。 このパラメーターの値は、ビジュアル デザイナーで使用できない型の場合は (0) 0、ビジュアル デザイナーで使用できる型の場合は (1) 1 である必要があります。

    カスタム ツールを使用できるようにする言語ごとに、カスタム ツールを個別に登録する必要があります。

    たとえば、MSDataSetGenerator は言語ごとに 1 回登録します。

    [HKEY_LOCAL_MACHINE\{hive}\SOFTWARE\Microsoft\VisualStudio\17.0_**_Config\Generators\{164b10b9-b200-11d0-8c61-00a0c91e29d5}\MSDataSetGenerator]
    @="Microsoft VB Code Generator for XSD"
    "CLSID"="{E76D53CC-3D4F-40a2-BD4D-4F3419755476}"
    "GeneratesDesignTimeSource"=dword:00000001
    
    [HKEY_LOCAL_MACHINE\{hive}\SOFTWARE\Microsoft\VisualStudio\17.0_**_Config\Generators\{fae04ec1-301f-11d3-bf4b-00c04f79efbc}\MSDataSetGenerator]
    @="Microsoft C# Code Generator for XSD"
    "CLSID"="{E76D53CC-3D4F-40a2-BD4D-4F3419755476}"
    "GeneratesDesignTimeSource"=dword:00000001