KsSynchronousDeviceControl 関数 (ksproxy.h)
KsSynchronousDeviceControl 関数は、ファイル ハンドルによって指定された KS オブジェクトに同期デバイス I/O 制御操作を発行します。
構文
KSDDKAPI HRESULT KsSynchronousDeviceControl(
[in] HANDLE Handle,
[in] ULONG IoControl,
[in, optional] PVOID InBuffer,
[in] ULONG InLength,
[out, optional] PVOID OutBuffer,
[in] ULONG OutLength,
[in, out] PULONG BytesReturned
);
パラメーター
[in] Handle
操作を実行する KS オブジェクトへのハンドル。
[in] IoControl
KS オブジェクトに対して実行する特定の種類の操作を識別するコードを制御します。
[in, optional] InBuffer
実行する操作を指定するデータを含むバッファーへのポインター。
[in] InLength
InBuffer のバッファーのサイズ (バイト単位)。
[out, optional] OutBuffer
操作のデータまたは操作のデータを受け取るバッファー領域のいずれかを含むバッファーへのポインター。
[in] OutLength
OutBufferのバッファーのサイズ (バイト単位)。
[in, out] BytesReturned
KsSynchronousDeviceControl がバッファーに格納するデータのサイズ (バイト単位) を受け取る変数へのポインター OutBuffer。
戻り値
成功した場合は NOERROR を返します。それ以外の場合は、エラー コードを返します。
備考
KS オブジェクトのハンドルを取得するには、アプリケーションで IKsObject::KsGetObjectHandle メソッドを呼び出す必要があります。
アプリケーションは、次のように、IoControl とバッファーを InBuffer に設定し、OutBuffer を して、実行する操作を指定できます。
- IoControl プロパティにアクセスするための IOCTL_KS_PROPERTY に設定します。 InBuffer KSPROPERTY 構造体を指すように設定します。この構造体では、アクセスするプロパティ セットのプロパティと、プロパティに関する情報を取得するか、プロパティ内の情報を設定するかを指定します。 プロパティに情報を設定するには、その情報 ポイントするように OutBuffer を設定します。 プロパティから情報を取得するには、その情報 受信するように OutBuffer を設定します。
- IoControl メソッドを実行する IOCTL_KS_METHOD に設定します。 InBuffer 、実行するメソッドセットのメソッドと、メソッドに関連するデータの読み取り/書き込みを指定する KSMETHOD 構造体を指すように設定します。 データを読み取るために、OutBuffer そのデータをポイントするように設定します。 データを書き込むには、そのデータ 受信するように OutBuffer を設定します。
- IoControl を IOCTL_KS_ENABLE_EVENT に設定して、特定のイベント アクションが発生するたびに、Handle によって指定された KS オブジェクトにアプリケーションへの通知を要求します。 InBuffer 、通知するイベント セットのイベントを指定する KSEVENT 構造体を指すように設定します。 イベントが発生したときに KS オブジェクト アプリケーションに通知する方法を記述する、KSEVENTDATA 構造体を指す OutBuffer を設定します。 KS イベント も参照してください。
- IoControl を IOCTL_KS_DISABLE_EVENT に設定して、特定のイベント アクションが発生するたびにアプリケーションへの通知を停止するように、Handle で指定された KS オブジェクトに通知します。 InBuffer KSEVENTDATA 構造体を指すように設定します。これは、イベント通知要求で以前に使用されていた構造体です。
KsSynchronousDeviceControlの呼び出しの後、OutBuffer には、Handleで指定されたオブジェクトでサポートされているセット GUID の配列が含まれます。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | ksproxy.h (Ksproxy.h を含む) |
ライブラリ | Ksproxy.lib |
関連項目
KSEVENT を する
KSEVENTDATA の
KSPROPERTY を する