[新しいプロジェクト] ダイアログ ボックスにディレクトリを追加する
新しいプロジェクトの種類を作成するときに、[新しいプロジェクト] ダイアログ ボックスで新しいディレクトリを登録して、テンプレートとして使用できるように表示することもできます。 次のコード例では、新しいディレクトリ (ノードとも呼ばれる) を登録する方法について説明します。 この例では、VSPackage である CLSID_Package によって公開されているテンプレートが登録されています。 結果として、[新しいプロジェクト] ダイアログ ボックスの左側には、追加したノードが、Folder_Label_ResID リソースによって決定される名前と共に提供されます。 このリソースは、VSPackage サテライト DLL から読み込まれます。
Folderの値は、Folder_Label_ResID ノードが表示されるフォルダーの GUID を表します。 この例では、GUID は [新しいプロジェクト] ダイアログ ボックスの [プロジェクトの種類] ペインにある [その他のプロジェクト] フォルダーを表します。 [その他のプロジェクト] の値が存在しない場合、ラベルは最上位レベルに配置されます。
TemplatesDir
の値は、プロジェクト テンプレートが格納されているディレクトリの完全パスを指定します。 これらのファイルには、複製する .vsz ファイルまたは一般的なテンプレート ファイルを指定できます。
TemplatesLocalizedSubDir
を指定する場合、ローカライズされたテンプレートを保持する TemplatesDir
のサブディレクトリに名前を指定する文字列のリソース ID にする必要があります。 サテライト DLL がある場合、Visual Studio ではそこから文字列リソースを読み込むため、サテライト DLL ごとに異なるサブディレクトリ名を含めることができます。 SortPriority
の値は並べ替えの優先度を指定します。
NoRemove NewProjectTemplates
{
NoRemove TemplateDirs
{
ForceRemove %CLSID_Package%
{
ForceRemove /1 = s '#%Folder_Label_ResID%'
{
val Folder = s '{DCF2A94A-45B0-11D1-ADBF-00C04FB6BE4C}'
val TemplatesDir = s '%Template_Path%'
val TemplatesLocalizedSubDir = s '#100'
val SortPriority = d 1000
}
}
}
}