次の方法で共有


INF AddComServer ディレクティブ

AddComServer ディレクティブは、DDInstall.COM セクション内で使用され、COM サーバーを登録します。 DDInstall.COM セクションでは、1 つ以上の COM サーバーを定義する必要があります。 このセクションは、Windows 11 バージョン 24H2 以降でサポートされています。

[DDInstall.COM]

AddComServer = com-server-name, [flags], com-server-install-section

エントリ

com-server-name

インストールする COM サーバーの名前を指定します。 名前は通常、登録されている COM コンポーネントの名前または説明です。 COM サーバー名は INF 内で一意である必要があり、COM クラスの説明がない場合の説明として使用されます。

フラグ

AddComServer ディレクティブの追加フラグを指定します。 flags フィールドは将来使用するために予約されており、空白のままにするか、ゼロに設定する必要があります。

com-server-install-section

COM サーバーとそのクラスを登録するための情報を含む INF ライター定義セクションを参照します。

COM サーバーのインストールセクションの詳細については、次の「解説」を参照してください。COM サーバー全般については、「COM クライアントとサーバーの」を参照してください。

注釈

AddComServer ディレクティブにより、システム セットアップは、ドライバー パッケージの ドライバー ストアの相対パスに、サーバー バイナリによって実装された COM サーバーを登録します。

coRegisterDeviceCatalogは、COM クラスで CoCreateInstance呼び出す前に、すべてのプロセスで呼び出す必要があります。 CoRegisterDeviceCatalog 呼び出すと、COM ランタイムが使用するプロセスで COM サーバーの登録を使用できるようになります。

INF DDInstall.COM セクションの各 AddComServer ディレクティブは、INF ファイル内の別の場所で INF ライター定義の com-server-install-section を参照できます。 INF ライターで定義された各セクション名は、INF ファイル内で一意である必要があり、セクション名を定義するための一般的な規則に従う必要があります。 これらの規則の詳細については、「INF ファイルの一般的な構文規則」を参照してください。

AddComServer ディレクティブは、INF 内の別の場所で、名前付き com-server-install-section を参照する必要があります。 このような各セクションの形式は次のとおりです。

[com-server-install-section]

ServerType            = server-type
ServerBinary          = binary-path
[ServerBinaryWow64    = wow64-binary-path]
AddComClass           = {clsid-guid}[, flags[, com-class-install-section]]

com-server-install-section は、ServerTypeServerBinary、および 1 つ以上の AddComClassを個別の行に指定する必要があります。

com-server-install-section のエントリと値

ServerType

登録する COM サーバーの種類を指定します。 各 COM サーバーの種類には、必須および省略可能なエントリとディレクティブの特定のセットがあります。 0x1 (In-proc) のみがサポートされています。

server-type-enum サーバーの種類 必須ディレクティブ 省略可能なディレクティブ
0x1 インプロセス
  • ServerBinary
  • AddComClass
  • ServerBinaryWow64
  • ThreadingModel

ServerBinary

ネイティブ アーキテクチャの COM サーバー バイナリへのパス。

ServerBinaryWow64

AMD64 プラットフォームでの非ネイティブ x86 アーキテクチャ サポート用の COM サーバー WOW64 バイナリへのパス。

AddComClass = {clsid-guid}[, flags[, com-class-install-section]]

この必須ディレクティブを 1 回以上使用して、オプションのインストール セクションで COM クラスを登録できます。

COM クラスを登録する方法の詳細については、INF AddComClass ディレクティブ を参照してください。

[ContosoEncoderServer.NT.COM]
AddComServer   = ContosoEncoderServer,, ContosoEncoder_ComServer_Inst

[ContosoEncoder_ComServer_Inst]
ServerType     = 1 ; in-proc
ServerBinary   = %13%\contoso_encoder.dll
AddComClass    = {bb2b85ab-9473-42e5-8d1a-0f01d3879879}
AddComClass    = {f1baf99b-d28a-4ea3-b652-355da082d260}, 0, ContosoEncoderControl_ComClass_Inst

[ContosoEncoderControl_ComClass_Inst]
Description    = %ContosoEncoder_Comclass_Desc%
ThreadingModel = Apartment

[Strings]
%ContosoEncoder_Comclass_Desc%="Contoso H.264 Encoder"

こちらもご覧ください