次の方法で共有


IOCTL_PAR_QUERY_DEVICE_ID IOCTL (ntddpar.h)

IOCTL_PAR_QUERY_DEVICE_ID要求は、システム指定のファンクション ドライバーによって並列ポート用に割り当てられた並列デバイスの IEEE 1284 デバイス ID を返します。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

[なし] :

入力バッファーの長さ

[なし] :

出力バッファー

AssociatedIrp.SystemBuffer メンバーは、クライアントがデバイス ID を出力するために割り当てるバッファーを指します。 バッファーには、デバイス ID と NULL ターミネータが含まれています。

出力バッファーの長さ

Parameters.DeviceIoControl.OutputBufferLength メンバーは、デバイス ID と NULL ターミネータの両方を保持できる出力バッファーのサイズをバイト単位で指定します。 クライアントは、 IOCTL_PAR_QUERY_DEVICE_ID_SIZE 要求を使用して、必要なバッファー サイズを決定できます。 デバイス ID のサイズは最大 64 KB です。

ステータス ブロック

要求が成功した場合、 Information メンバーは、デバイス ID と NULL ターミネータの両方を保持するバッファーのサイズ (バイト単位) に設定されます。 それ以外の場合、 Information メンバーは 0 に設定されます。

Status メンバーは、並列デバイスに対するデバイス制御要求によって返される汎用状態値の 1 つ、または次のいずれかの値に設定されます。

STATUS_BUFFER_TOO_SMALL

AssociatedIrp.SystemBuffer が指す出力バッファーは、デバイス ID と NULL ターミネータのサイズ (バイト単位) 未満です。

STATUS_IO_DEVICE_ERROR

デバイス I/O エラーが発生しました。

要件

要件
Header ntddpar.h (Ntddpar.h を含む)

こちらもご覧ください

IOCTL_PAR_QUERY_DEVICE_ID_SIZE