次の方法で共有


SetupDiSetClassRegistryPropertyA 関数 (setupapi.h)

SetupDiSetClassRegistryProperty 関数は、レジストリに指定されたデバイス クラス プロパティを設定します。

構文

WINSETUPAPI BOOL SetupDiSetClassRegistryPropertyA(
  [in]           const GUID *ClassGuid,
  [in]           DWORD      Property,
  [in, optional] const BYTE *PropertyBuffer,
  [in]           DWORD      PropertyBufferSize,
  [in, optional] PCSTR      MachineName,
                 PVOID      Reserved
);

パラメーター

[in] ClassGuid

プロパティを設定するデバイス クラスを識別する GUID へのポインター。

[in] Property

設定するプロパティを識別する値。次のいずれかである必要があります。

SPCRP_CHARACTERISTICS

呼び出し元は、クラスのデバイス特性を指定するフラグを提供します。 特性フラグの一覧については、IoCreateDeviceの DeviceCharacteristics パラメーター 参照してください。 デバイスの特性は、デバイス クラスのインストール時に設定する必要があり、デバイス クラスのインストール後に変更しないでください。

SPCRP_DEVTYPE

呼び出し元は、クラスのデバイスの種類を指定します。 詳細については、「デバイスの種類の指定」を参照してください。 デバイス クラスのインストール時にデバイスの種類を設定する必要があり、デバイス クラスのインストール後に変更しないでください。

SPCRP_EXCLUSIVE

呼び出し元は、ユーザーがこのクラスのデバイスへの排他的アクセスを取得できるかどうかを指定する DWORD 値を提供します。 排他アクセスが許可されている場合は指定された値は 1、それ以外の場合は 0 です。 デバイス の排他設定は、デバイス クラスのインストール時に設定する必要があり、デバイス クラスのインストール後に変更しないでください。

SPCRP_LOWERFILTERS

(Windows Vista 以降)呼び出し元は、デバイス セットアップ クラスにインストールされている下位フィルター ドライバーのサービス名のREG_MULTI_SZ一覧を提供します。 クラス フィルター ドライバーをインストールする方法の詳細については、「フィルター ドライバー のインストールと INF ClassInstall32 の 」セクションを参照してください。

SPCRP_SECURITY

呼び出し元は、デバイスのセキュリティ記述子を自己相対形式でSECURITY_DESCRIPTOR構造として提供します (Microsoft Windows SDK のドキュメントで説明)。

SPCRP_SECURITY_SDS

呼び出し元は、デバイスのセキュリティ記述子をテキスト文字列として提供します。 セキュリティ記述子文字列の詳細については、「セキュリティ記述子定義言語 (Windows)を参照してください。 セキュリティ記述子文字列の形式については、「セキュリティ記述子定義言語 (Windows)」を参照してください。

SPCRP_UPPERFILTERS

(Windows Vista 以降)呼び出し元は、デバイス セットアップ クラスにインストールされている上位フィルター ドライバーのサービス名のREG_MULTI_SZ一覧を提供します。 クラス フィルター ドライバーをインストールする方法の詳細については、「フィルター ドライバー のインストールと INF ClassInstall32 の 」セクションを参照してください。

[in, optional] PropertyBuffer

指定したプロパティを提供するバッファーへのポインター。 このパラメーターは省略可能であり、NULLできます。

[in] PropertyBufferSize

PropertyBuffer バッファーのサイズ (バイト単位)。

[in, optional] MachineName

指定したデバイス クラス プロパティを設定するリモート システムの名前を含む NULL で終わる文字列へのポインター。 このパラメーターは省略可能であり、NULLできます。 このパラメーターが NULL場合、プロパティはローカル システムの名前に設定されます。

注意

この機能は削除されたため、この機能を使用してリモート コンピューターにアクセスすることは、Windows 8 および Windows Server 2012 以降ではサポートされていません。

Reserved

予約済み。NULLする必要があります。

戻り値

この関数は、成功した場合 TRUE を返します。 それ以外の場合は、FALSE を返し、ログに記録されたエラーを GetLastError呼び出して取得できます。

備考

この関数の呼び出し元は、Administrators グループのメンバーである必要があります。

デバイス クラス プロパティのデータ型を確認するには、SetupDiGetClassRegistryProperty呼び出します。

手記

setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupDiSetClassRegistryProperty を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows XP 以降のバージョンの Windows で使用できます。
ターゲット プラットフォーム の デスクトップ
ヘッダー setupapi.h (Setupapi.h を含む)
ライブラリ Setupapi.lib

関連項目

SetupDiGetClassRegistryProperty の

SetupDiGetDeviceRegistryProperty の

SetupDiSetDeviceRegistryProperty の