ソフトウェア開発キットを作成するCreate a software development kit

ソフトウェア開発キット (SDK) は、Visual Studio で1つの項目として参照できる Api のコレクションです。A software development kit (SDK) is a collection of APIs that you can reference as a single item in Visual Studio. [ 参照マネージャー ] ダイアログボックスには、プロジェクトに関連するすべての sdk が一覧表示されます。The Reference Manager dialog box lists all the SDKs that are relevant to the project. SDK をプロジェクトに追加すると、Visual Studio で Api を使用できるようになります。When you add an SDK to a project, the APIs are available in Visual Studio.

Sdk には、次の2種類があります。There are two types of SDKs:

  • プラットフォーム Sdk は、プラットフォーム用のアプリを開発するための必須コンポーネントです。Platform SDKs are mandatory components for developing apps for a platform. たとえば、SDK は、 Windows 8.1Windows 8.1 アプリを開発するために必要です Windows 8.x ストアWindows 8.x StoreFor example, the Windows 8.1Windows 8.1 SDK is required to develop Windows 8.x ストアWindows 8.x Store apps.

  • 拡張 Sdk は、プラットフォームを拡張するオプションのコンポーネントですが、そのプラットフォーム用のアプリを開発する場合には必須ではありません。Extension SDKs are optional components that extend a platform but aren't mandatory for developing apps for that platform.

以下のセクションでは、Sdk の一般的なインフラストラクチャと、プラットフォーム SDK と拡張 SDK を作成する方法について説明します。The following sections describe the general infrastructure of SDKs and how to create a platform SDK and an extension SDK.

プラットフォーム SDKPlatform SDKs

プラットフォーム用のアプリを開発するには、プラットフォーム Sdk が必要です。Platform SDKs are required to develop apps for a platform. たとえば、 Windows 8.1Windows 8.1 SDK は、用のアプリを開発するために必要です Windows 8.1Windows 8.1For example, the Windows 8.1Windows 8.1 SDK is required to develop apps for Windows 8.1Windows 8.1.

インストールInstallation

すべてのプラットフォーム Sdk は、 HKLM\Software\Microsoft\Microsoft sdk \ [tpi] \ v [tpi] \ @InstallationFolder = [SDK root] にインストールされます。All platform SDKs will be installed at HKLM\Software\Microsoft\Microsoft SDKs\[TPI]\v[TPV]\@InstallationFolder = [SDK root]. これにより、 Windows 8.1Windows 8.1 SDK は HKLM\Software\Microsoft\Microsoft SDKs\Windows\v8.1 にインストールされます。Accordingly, the Windows 8.1Windows 8.1 SDK is installed at HKLM\Software\Microsoft\Microsoft SDKs\Windows\v8.1.

LayoutLayout

プラットフォーム Sdk には次のレイアウトがあります。Platform SDKs have the following layout:

\[InstallationFolder root]
            SDKManifest.xml
            \References
                  \[config]
                        \[arch]
            \DesignTime
                  \[config]
                        \[arch]
ノードNode 説明Description
参照 フォルダーReferences folder コーディング可能な Api を含むバイナリが含まれています。Contains binaries that contain APIs that can be coded against. これには、Windows メタデータ (WinMD) ファイルまたはアセンブリを含めることができます。These could include Windows Metadata (WinMD) files or assemblies.
デザイン時 フォルダーDesignTime folder 実行前またはデバッグ時にのみ必要なファイルが含まれています。Contains files that are needed only at pre-run/debugging time. これには、XML ドキュメント、ライブラリ、ヘッダー、ツールボックスのデザイン時バイナリ、MSBuild 成果物などが含まれます。These could include XML docs, libraries, headers, Toolbox design-time binaries, MSBuild artifacts, and so forth

XML ドキュメントは \designtime どちら フォルダーに配置するのが理想的ですが、参照用の xml ドキュメントは引き続き Visual Studio の参照ファイルと共に配置されます。XML docs would, ideally, be placed in the \DesignTime folder, but XML docs for references will continue to be placed alongside the reference file in Visual Studio. たとえば、参照用の XML ドキュメントである [config] [arch] \ \ \sample.dll は、 \ [config \] [arch] \sample.xmlと参照され、そのドキュメントのローカライズ版は [ \ config] \ [arch] \ [locale] \sample.xml になります。For example, the XML doc for a reference \References\[config]\[arch]\sample.dll will be \References\[config]\[arch]\sample.xml, and the localized version of that doc will be \References\[config]\[arch]\[locale]\sample.xml.
構成 フォルダーConfiguration folder フォルダーは、 DebugRetail 、および commonconfiguration の3つだけです。There can be only three folders: Debug, Retail and CommonConfiguration. Sdk の作成者は、sdk のコンシューマーが対象とする構成に関係なく、同じ一連の SDK ファイルを使用する必要がある場合に、それらのファイルを Commonconfiguration の下に配置できます。SDK authors can place their files under CommonConfiguration if the same set of SDK files should be consumed, regardless of the configuration that the SDK consumer will target.
アーキテクチャ フォルダーArchitecture folder サポートされている アーキテクチャ フォルダーが存在していてもかまいません。Any supported architecture folder can exist. Visual Studio では、x86、x64、ARM、およびニュートラルアーキテクチャがサポートされています。Visual Studio supports the following architectures: x86, x64, ARM, and neutral. 注: Win32 は x86 にマップされ、AnyCPU はニュートラルにマップされます。Note: Win32 maps to x86, and AnyCPU maps to neutral.

MSBuild は、プラットフォーム Sdk の \CommonConfiguration\neutral の下でのみ参照できます。MSBuild looks only under \CommonConfiguration\neutral for Platform SDKs.
SDKManifest.xmlSDKManifest.xml このファイルでは、Visual Studio が SDK をどのように使用するかを説明します。This file describes how Visual Studio should consume the SDK. の SDK マニフェストを確認し Windows 8.1Windows 8.1 ます。Look at the SDK Manifest for Windows 8.1Windows 8.1:

<FileList DisplayName = "Windows" PlatformIdentity = "Windows, version=8.1" TargetFramework = ".NET for Windows Store apps, version=v4.5.1; .NET Framework, version=v4.5.1" MinVSVersion = "14.0"> <File Reference = "Windows.winmd"> <ToolboxItems VSCategory = "Toolbox.Default" /> </File> </FileList>

DisplayName: オブジェクトブラウザーが参照一覧に表示する値。DisplayName: The value that the Object Browser displays in the Browse list.

Platformidentity: この属性が存在することは、SDK が platform SDK であること、およびその SDK から追加された参照をローカルにコピーできないことを Visual Studio と MSBuild に通知します。PlatformIdentity: The existence of this attribute tells Visual Studio and MSBuild that the SDK is a platform SDK and that the references added from it shouldn't be copied locally.

Targetframework: この属性は、この属性の値に指定されているものと同じフレームワークを対象とするプロジェクトだけが SDK を使用できるようにするために、Visual Studio によって使用されます。TargetFramework: This attribute is used by Visual Studio to ensure that only projects that target the same Frameworks as specified in the value of this attribute can consume the SDK.

Minvsversion: この属性は、それに適用される Sdk のみを使用するために Visual Studio によって使用されます。MinVSVersion: This attribute is used by Visual Studio to consume only the SDKs that apply to it.

参照: この属性は、コントロールを含む参照に対してのみ指定する必要があります。Reference: This attribute must to be specified for only those references that contain controls. 参照にコントロールが含まれているかどうかを指定する方法については、以下を参照してください。For information about how to specify whether a reference contains controls, see below.

拡張 SDKExtension SDKs

以下のセクションでは、拡張機能 SDK をデプロイするために必要な作業について説明します。The following sections describe what you need to do to deploy an extension SDK.

インストールInstallation

拡張 Sdk は、レジストリキーを指定せずに、特定のユーザーまたはすべてのユーザーに対してインストールできます。Extension SDKs can be installed for a specific user or for all users without specifying a registry key. すべてのユーザーに対して SDK をインストールするには、次のパスを使用します。To install an SDK for all users, use the following path:

% Program Files%\Microsoft Sdk- <target platform> v<プラットフォームのバージョン番号/ > extensionsdk%Program Files%\Microsoft SDKs<target platform>\v<platform version number>\ExtensionSDKs

ユーザー固有のインストールの場合は、次のパスを使用します。For a user-specific installation, use the following path:

%USERPROFILE%\AppData\Local\Microsoft Sdk- <target platform> v<プラットフォームのバージョン番号/ > extensionsdk%USERPROFILE%\AppData\Local\Microsoft SDKs<target platform>\v<platform version number>\ExtensionSDKs

別の場所を使用する場合は、次の2つのいずれかを実行する必要があります。If you want to use a different location, you must do one of two things:

  1. レジストリキーで指定します。Specify it in a registry key:

    HKLM\Software\Microsoft\Microsoft Sdk- <target platform> v<プラットフォームのバージョン番号/ > extensionsdk<SDKName><SDKVersion>HKLM\Software\Microsoft\Microsoft SDKs<target platform>\v<platform version number>\ExtensionSDKs<SDKName><SDKVersion>\

    との値を持つ (既定の) サブキーを追加し <path to SDK><SDKName><SDKVersion> ます。and add a (Default) subkey that has a value of <path to SDK><SDKName><SDKVersion>.

  2. MSBuild プロパティ SDKReferenceDirectoryRoot をプロジェクトファイルに追加します。Add the MSBuild property SDKReferenceDirectoryRoot to your project file. このプロパティの値は、参照する拡張 Sdk が存在するディレクトリのセミコロン区切りの一覧です。The value of this property is a semicolon delimited list of directories in which the Extension SDKs you want to reference reside.

インストールレイアウトInstallation layout

拡張 Sdk には次のインストールレイアウトがあります。Extension SDKs have the following installation layout:

\<ExtensionSDKs root>
           \<SDKName>
                 \<SDKVersion>
                        SDKManifest.xml
                        \References
                              \<config>
                                    \<arch>
                        \Redist
                              \<config>
                                    \<arch>
                        \DesignTime
                               \<config>
                                     \<arch>

  1. \<SDKName > \<SDKVersion > : 拡張 sdk の名前とバージョンは、sdk ルートへのパス内の対応するフォルダー名から派生します。\<SDKName>\<SDKVersion>: the name and version of the extension SDK is derived from the corresponding folder names in the path to the SDK root. MSBuild はこの id を使用してディスク上の SDK を検索し、Visual Studio は [ プロパティ ] ウィンドウと [ 参照マネージャー ] ダイアログボックスにこの id を表示します。MSBuild uses this identity to find the SDK on disk, and Visual Studio displays this identity in the Properties window and Reference Manager dialog.

  2. References フォルダー: api を含むバイナリ。References folder: the binaries that contain the APIs. これは、Windows メタデータ (WinMD) ファイルまたはアセンブリである可能性があります。These could be Windows Metadata (WinMD) files or assemblies.

  3. Redist フォルダー: ランタイム/デバッグに必要なファイルは、ユーザーのアプリケーションの一部としてパッケージ化される必要があります。Redist folder: the files that are needed for runtime/debugging and should get packaged as part of the user's application. すべてのバイナリは、 \<config > \<arch > の下に配置する必要があります。また、このバイナリ名は、一意性を確保するために次の形式にする必要があります。 ] <company> . <product> <purpose> <extension> ...たとえば、* Microsoft.Cpp.Build.dllのようになります。All binaries should be placed underneath \redist\<config>\<arch>, and the binary names should have the following format to ensure uniqueness: ]<company>.<product>.<purpose>.<extension>. For example, *Microsoft.Cpp.Build.dll. 他の Sdk のファイル名と競合する可能性のある名前を持つすべてのファイル (javascript、css、pri、xaml、png、jpg ファイルなど) は、sdkname config<arch<の<下に配置する必要があり \ ます ( > \ > \ > * xaml コントロールに関連付けられているファイルを除く)。これらのファイルは、* \ redist \<config > \<arch > \<componentname > \ の下に配置する必要があります。All files with names that may collide with file names from other SDKs (for example, javascript, css, pri, xaml, png, and jpg files) should be placed underneath \redist\<config>\<arch>\<sdkname>* except for the files that are associated with XAML controls. These files should be placed underneath *\redist\<config>\<arch>\<componentname>\.

  4. デザイン時 folder: 実行前またはデバッグ時にのみ必要なファイルで、ユーザーのアプリケーションの一部としてパッケージ化することはできません。DesignTime folder: the files that are needed at only pre-run/debugging time and shouldn't be packaged as part of the user's application. これには、XML ドキュメント、ライブラリ、ヘッダー、ツールボックスのデザイン時バイナリ、MSBuild 成果物などがあります。These could be XML docs, libraries, headers, toolbox design-time binaries, MSBuild artifacts, and so forth. ネイティブプロジェクトでの使用を目的とした SDK には、 SDKName ファイルが含まれている必要があります。Any SDK that is intended for consumption by a native project must have an SDKName.props file. この種類のファイルの例を次に示します。The following shows a sample of this type of file.

    <?xml version="1.0" encoding="utf-8"?>
    <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <PropertyGroup>
        <ExecutablePath>C:\Temp\ExecutablePath;$(ExecutablePath)</ExecutablePath>
        <IncludePath>$(FrameworkSDKRoot)\..\v8.1\ExtensionSDKs\cppimagingsdk\1.0\DesignTime\CommonConfiguration\Neutral\include;$(IncludePath)</IncludePath>
        <AssemblyReferencePath>C:\Temp\AssemblyReferencePath;(AssemblyReferencePath)</AssemblyReferencePath>
        <LibraryPath>$(FrameworkSDKRoot)\..\v8.1\ExtensionSDKs\cppimagingsdk\1.0\DesignTime\Debug\ARM;$(LibraryPath)</LibraryPath>
        <SourcePath>C:\Temp\SourcePath\X64;$(SourcePath)</SourcePath>
        <ExcludePath>C:\Temp\ExcludePath\X64;$(ExcludePath)</ExcludePath>
        <_PropertySheetDisplayName>DevILSDK, 1.0</_PropertySheetDisplayName>
      </PropertyGroup>
    </Project>
    
    

    XML 参照ドキュメントは、参照ファイルと共に配置されます。XML reference documents are placed alongside the reference file. たとえば、 \ references \<config > \<arch >\sample.dll assembly の XML リファレンスドキュメントは \ 参照 \<config > \<arch >\sample.xml、そのドキュメントのローカライズされたバージョンは \ 参照<config<<\ > \ > \ >\sample.xmllocale です。For example, the XML reference document for the \References\<config>\<arch>\sample.dll assembly is \References\<config>\<arch>\sample.xml, and the localized version of that doc is \References\<config>\<arch>\<locale>\sample.xml.

  5. 構成 フォルダー: DebugRetail、および commonconfiguration という3つのサブフォルダー。Configuration folder: three subfolders: Debug, Retail, and CommonConfiguration. Sdk の作成者は、sdk のコンシューマーが対象とする構成に関係なく、同じ一連の SDK ファイルを使用する必要がある場合に、 Commonconfiguration の下にファイルを配置できます。SDK authors can place their files under CommonConfiguration when the same set of SDK files should be consumed, regardless of the configuration targeted by the SDK consumer.

  6. アーキテクチャ フォルダー: x86、X64、ARM、ニュートラルの各アーキテクチャがサポートされています。Architecture folder: the following architectures are supported: x86, x64, ARM, neutral. Win32 は x86 にマップされ、AnyCPU はニュートラルにマップされます。Win32 maps to x86, and AnyCPU maps to neutral.

SDKManifest.xmlSDKManifest.xml

SDKManifest.xml ファイルでは、Visual STUDIO が SDK をどのように使用するかを説明します。The SDKManifest.xml file describes how Visual Studio should consume the SDK. 次に例を示します。The following is an example:

<FileList>
DisplayName = "My SDK"
ProductFamilyName = "My SDKs"
TargetFramework = ".NETCore, version=v4.5.1; .NETFramework, version=v4.5.1"
MinVSVersion = "14.0"
MaxPlatformVersion = "8.1"
AppliesTo = "WindowsAppContainer + WindowsXAML"
SupportPrefer32Bit = "True"
SupportedArchitectures = "x86;x64;ARM"
SupportsMultipleVersions = "Error"
CopyRedistToSubDirectory = "."
DependsOn = "SDKB, version=2.0"
MoreInfo = "https://msdn.microsoft.com/MySDK">
<File Reference = "MySDK.Sprint.winmd" Implementation = "XNASprintImpl.dll">
<Registration Type = "Flipper" Implementation = "XNASprintFlipperImpl.dll" />
<Registration Type = "Flexer" Implementation = "XNASprintFlexerImpl.dll" />
<ToolboxItems VSCategory = "Toolbox.Default" />
</File>
</FileList>

次の一覧は、ファイルの要素を示しています。The following list gives the elements of the file:

  1. DisplayName: Visual Studio のユーザーインターフェイスの参照マネージャー、ソリューションエクスプローラー、オブジェクトブラウザー、およびその他の場所に表示される値。DisplayName: the value that appears in the Reference Manager, Solution Explorer, Object Browser, and other locations in the user interface for Visual Studio.

  2. ProductFamilyName: SDK 製品の全体的な名前。ProductFamilyName: The overall SDK product name. たとえば、sdk に Windows Library for JavaScript (WinJS)Windows Library for JavaScript (WinJS) は、"WinJS" と "WinJS" という名前が付けられています。これは、sdk 製品ファミリ "WinJS" の同じファミリに属しています。For example, the Windows Library for JavaScript (WinJS)Windows Library for JavaScript (WinJS) SDK is named "Microsoft.WinJS.1.0" and "Microsoft.WinJS.2.0", which belong to the same family of SDK products family, "Microsoft.WinJS". この属性は、Visual Studio と MSBuild がその接続を行うことを許可します。This attribute allows Visual Studio and MSBuild to make that connection. この属性が存在しない場合は、SDK 名が製品ファミリ名として使用されます。If this attribute doesn't exist, the SDK Name is used as the product family name.

  3. FrameworkIdentity: 1 つ以上の Windows コンポーネントライブラリに対する依存関係を指定します。FrameworkIdentity: Specifies a dependency on one or more Windows component libraries. この属性の値は、コンシューマー側アプリのマニフェストに格納されます。The value of this attribute is put into the consuming app's manifest. この属性は、Windows コンポーネントライブラリにのみ適用できます。This attribute is applicable only to Windows component libraries.

  4. TargetFramework: 参照マネージャーとツールボックスで使用できる Sdk を指定します。TargetFramework: Specifies the SDKs that are available in the Reference Manager and the toolbox. これは、ターゲットフレームワークモニカーのセミコロン区切りの一覧です。たとえば、".NET Framework, version = v2.0; .NET Framework, version = v1.0" のようになります。This is a semicolon-delimited list of target framework monikers, for example ".NET Framework, version=v2.0; .NET Framework, version=v4.5.1". 同じターゲットフレームワークの複数のバージョンが指定されている場合、参照マネージャーは、フィルター処理のために指定された最も低いバージョンを使用します。If several versions of the same target framework are specified, the Reference Manager uses the lowest specified version for filtering purposes. たとえば、".NET Framework, version = v2.0; .NET Framework, version = v1.0" が指定されている場合、参照マネージャーは ".NET Framework, version = v2.0" を使用します。For example, if ".NET Framework, version=v2.0; .NET Framework, version=v4.5.1" is specified, Reference Manager will use ".NET Framework, version=v2.0". 特定のターゲットフレームワークプロファイルが指定されている場合、そのプロファイルだけが、フィルター処理のために参照マネージャーによって使用されます。If a specific target framework profile is specified, only that profile will be used by the Reference Manager for filtering purposes. たとえば、"Silverlight, version = v4.0, profile = Appname.windowsphone" を指定した場合、参照マネージャーは、Windows Phone プロファイルのみをフィルター処理します。完全な Silverlight 4.0 フレームワークを対象とするプロジェクトでは、参照マネージャーで SDK が表示されません。For example, when "Silverlight, version=v4.0, profile=WindowsPhone" is specified, Reference Manager filters on only the Windows Phone profile; a project targeting the full Silverlight 4.0 Framework does not see the SDK in the Reference Manager.

  5. MinVSVersion: Visual Studio の最小バージョン。MinVSVersion: The minimum Visual Studio version.

  6. MaxPlatformVerson: 拡張機能 SDK が動作しないプラットフォームのバージョンを指定するには、ターゲットプラットフォームの最大バージョンを使用する必要があります。MaxPlatformVerson: The maximum target platform version should be used to specify the platform versions on which your Extension SDK will not work. たとえば、Microsoft Visual C++ ランタイムパッケージ v1.0 は、Windows 8 プロジェクトでのみ参照する必要があります。For example, the Microsoft Visual C++ Runtime Package v11.0 should be referenced only by Windows 8 projects. このため、Windows 8 プロジェクトの MaxPlatformVersion は8.0 です。Thus, the Windows 8 project's MaxPlatformVersion is 8.0. これは、参照マネージャーが Windows 8.1 プロジェクトのランタイムパッケージをフィルターで Microsoft Visual C++ 除外することを意味し、MSBuild がプロジェクトを参照したときに MSBuild がエラーをスローすることを意味し Windows 8.1Windows 8.1 ます。This means that the Reference Manager filters out Microsoft Visual C++ Runtime Package for a Windows 8.1 project, and MSBuild throws an error when a Windows 8.1Windows 8.1 project references it. 注: この要素は以降でサポートされてい Visual Studio 2013Visual Studio 2013 ます。Note: this element is supported starting in Visual Studio 2013Visual Studio 2013.

  7. AppliesTo: 適用可能な Visual Studio プロジェクトの種類を指定して、参照マネージャーで使用できる Sdk を指定します。AppliesTo: Specifies the SDKs that are available in the Reference Manager by specifying applicable Visual Studio project types. Windows では、WindowsAppContainer、VisualC、VB、CSharp、Windowsappcontainer、JavaScript、Managed、および Native の9つの値が認識されます。Nine values are recognized: WindowsAppContainer, VisualC, VB, CSharp, WindowsXAML, JavaScript, Managed, and Native. SDK の作成者は and ("+") または ("|") を使用できますが、("!") は使用できません。SDK に適用されるプロジェクトの種類のスコープを厳密に指定する演算子。The SDK author can use and ("+'), or ("|"), not ("!") operators to specify exactly the scope of project types that apply to the SDK.

    WindowsAppContainer は、アプリのプロジェクトを識別 Windows 8.x ストアWindows 8.x Store します。WindowsAppContainer identifies projects for Windows 8.x ストアWindows 8.x Store apps.

  8. SupportPrefer32Bit: サポートされている値は "True" と "False" です。SupportPrefer32Bit: Supported values are "True" and "False". 既定値は "True" です。The default is "True". 値が "False" に設定されている場合、SDK を参照している Windows 8.x ストアWindows 8.x Store プロジェクトで Prefer32Bit が有効になっている場合、MSBuild はプロジェクト (またはデスクトッププロジェクトの警告) のエラーを返します。If the value is set to "False", MSBuild returns an error for Windows 8.x ストアWindows 8.x Store projects (or a warning for desktop projects) if the project that references the SDK has Prefer32Bit enabled. Prefer32Bit の詳細については、「 [ビルド] ページ、プロジェクトデザイナー (C#) 」または「 [コンパイル] ページ (プロジェクトデザイナー) (Visual Basic)」を参照してください。For more information about Prefer32Bit, see Build page, Project Designer (C#) or Compile page, Project Designer (Visual Basic).

  9. SupportedArchitectures: SDK がサポートする、セミコロンで区切られたアーキテクチャの一覧。SupportedArchitectures: A semicolon delimited list of architectures that the SDK supports. 使用中のプロジェクトで対象の SDK アーキテクチャがサポートされていない場合、MSBuild は警告を表示します。MSBuild displays a warning if the targeted SDK architecture in the consuming project isn't supported. この属性が指定されていない場合、MSBuild ではこの種類の警告は表示されません。If this attribute isn't specified, MSBuild never displays this type of warning.

  10. Supports複数バージョン: この属性が " エラー " または " 警告" に設定されている場合、MSBuild は同じプロジェクトが同じ SDK ファミリの複数のバージョンを参照できないことを示します。SupportsMultipleVersions: If this attribute is set to Error or Warning, MSBuild indicates that the same project can't reference multiple versions of the same SDK family. この属性が存在しない場合、または [ 許可] に設定されている場合、MSBuild はこの種類のエラーまたは警告を表示しません。If this attribute doesn't exist or is set to Allow, MSBuild doesn't display this type of error or warning.

  11. AppX: ディスク上の Windows コンポーネントライブラリのアプリケーションパッケージへのパスを指定します。AppX: Specifies the path to the app packages for the Windows component library on the disk. この値は、ローカルデバッグ中に Windows コンポーネントライブラリの登録コンポーネントに渡されます。This value is passed to the registration component of the Windows component library during local debugging. ファイル名の名前付け 規則は.... <Company> . <Product> <Architecture> <Configuration> <Version>appxThe naming convention for the file name is <Company>.<Product>.<Architecture>.<Configuration>.<Version>.appx. 属性名の構成とアーキテクチャは省略可能で、Windows コンポーネントライブラリに適用されない場合は属性値です。Configuration and Architecture are optional in the attribute name and the attribute value if they don't apply to the Windows component library. この値は、Windows コンポーネントライブラリにのみ適用されます。This value is applicable only to Windows component libraries.

  12. CopyRedistToSubDirectory: アプリパッケージルート (つまり、アプリパッケージの作成 ウィザードで選択された パッケージの場所) およびランタイムレイアウトルートを基準として、 \ redist フォルダーの下にあるファイルをコピーする場所を指定します。CopyRedistToSubDirectory: Specifies where the files under the \redist folder should be copied relative to the app package root (that is, the Package location chosen in the Create App Package wizard) and runtime layout root. 既定の場所は、アプリケーションパッケージのルートと F5 レイアウトです。The default location is the root of the app package and F5 layout.

  13. DependsOn: この SDK が依存する sdk を定義する SDK id の一覧。DependsOn: A list of SDK identities that define the SDKs on which this SDK depends. この属性は、参照マネージャーの詳細ペインに表示されます。This attribute appears in the details pane of the Reference Manager.

  14. 詳細情報: ヘルプと詳細情報を提供する web ページの URL。MoreInfo: The URL to the web page that provides help and more information. この値は、参照マネージャーの右ペインにある [詳細情報] リンクに使用されます。This value is used in the More Information link in the right pane of the Reference Manager.

  15. 登録の種類: アプリマニフェストの WinMD 登録を指定します。これは、対応する実装 DLL を持つネイティブ WinMD に必要です。Registration Type: Specifies the WinMD registration in the app manifest and is required for native WinMD, which has a counterpart implementation DLL.

  16. ファイル参照: コントロールが含まれているかネイティブ WinMDs である参照のみに対して指定されています。File Reference: Specified for only those references that contain controls or are native WinMDs. 参照にコントロールが含まれているかどうかを指定する方法については、以下の「 ツールボックスアイテムの場所の指定 」を参照してください。For information about how to specify whether a reference contains controls, see Specify the location of toolbox items below.

ツールボックスアイテムの場所の指定Specify the location of toolbox items

SDKManifest.xml スキーマの ToolBoxItems 要素は、プラットフォーム sdk と拡張 sdk の両方で、ツールボックス項目のカテゴリと場所を指定します。The ToolBoxItems element of the SDKManifest.xml schema specifies the category and location of toolbox items in both platform and extension SDKs. 次の例では、異なる場所を指定する方法を示します。The following examples show how to specify different locations. これは、WinMD 参照または DLL 参照に適用されます。This is applicable to either WinMD or DLL references.

  1. ツールボックスの既定のカテゴリにコントロールを配置します。Place controls in the toolbox default category.

    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory = "Toolbox.Default"/>
    </File>
    
  2. コントロールを特定のカテゴリ名の下に配置します。Place controls under a particular category name.

    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory= "MyCategoryName"/>
    </File>
    
  3. 特定のカテゴリ名の下にコントロールを配置します。Place controls under particular category names.

    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory = "Graph">
        <ToolboxItems/>
        <ToolboxItems VSCategory = "Data">
        <ToolboxItems />
    </File>
    
  4. Blend と Visual Studio で、異なるカテゴリ名の下にコントロールを配置します。Place controls under different category names in Blend and Visual Studio.

    // Blend accepts a slightly different structure for the category name because it allows a path rather than a single category.
    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory = "Graph" BlendCategory = "Controls/sample/Graph">
        <ToolboxItems />
    </File>
    
  5. Blend と Visual Studio で特定のコントロールを列挙する。Enumerate specific controls differently in Blend and Visual Studio.

    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory = "Graph">
        <ToolboxItems/>
        <ToolboxItems BlendCategory = "Controls/sample/Graph">
        <ToolboxItems/>
    </File>
    
  6. 特定のコントロールを列挙し、Visual Studio の共通パスの下に配置するか、[すべてのコントロール] グループだけに配置します。Enumerate specific controls, and place them under the Visual Studio Common Path or only in the All Controls Group.

    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory = "Toolbox.Common">
        <ToolboxItems />
        <ToolboxItems VSCategory = "Toolbox.All">
        <ToolboxItems />
    </File>
    
  7. 特定のコントロールを列挙し、[ツールボックス] に項目を表示せずに特定のセットのみを表示します。Enumerate specific controls, and show only a specific set in ChooseItems without them being in the toolbox.

    <File Reference = "sample.winmd">
        <ToolboxItems VSCategory = "Toolbox.ChooseItemsOnly">
        <ToolboxItems />
    </File>
    

関連項目See also