Win32 API 日本語リファレンス
ホームDevices.Fax › IStiUSD

IStiUSD

COM
IID0c9bb460-51ac-11d0-90ea-00aa0060f86c継承元IUnknown自前メソッド開始 vtbl3

メソッド 16

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT Initialize(IStiDeviceControl* pHelDcb, DWORD dwStiVersion, HKEY hParametersKey)
pHelDcbIStiDeviceControl*inハードウェア入出力を仲介するIStiDeviceControlインターフェイス。
dwStiVersionDWORDin使用するSTI APIのバージョン番号。
hParametersKeyHKEYinデバイスパラメーターが格納されたレジストリキーのハンドル。
vtbl 4 HRESULT GetCapabilities(STI_USD_CAPS* pDevCaps)
pDevCapsSTI_USD_CAPS*outUSD(ユーザーモードデバイスドライバ)の機能情報を受け取るSTI_USD_CAPS構造体。
vtbl 5 HRESULT GetStatus(STI_DEVICE_STATUS* pDevStatus)
pDevStatusSTI_DEVICE_STATUS*inoutデバイスの現在の状態を受け取るSTI_DEVICE_STATUS構造体。
vtbl 6 HRESULT DeviceReset()
vtbl 7 HRESULT Diagnostic(STI_DIAG* pBuffer)
pBufferSTI_DIAG*inout診断の実行結果を受け取るSTI_DIAG構造体。
vtbl 8 HRESULT Escape(DWORD EscapeFunction, void* lpInData, DWORD cbInDataSize, void* pOutData, DWORD cbOutDataSize, DWORD* pdwActualData)
EscapeFunctionDWORDin実行するデバイス固有エスケープ機能の番号。
lpInDatavoid*inエスケープ機能へ渡す入力データのバッファー。
cbInDataSizeDWORDin入力データのサイズ(バイト単位)。
pOutDatavoid*outエスケープ機能からの出力データを受け取るバッファー。
cbOutDataSizeDWORDin出力バッファーのサイズ(バイト単位)。
pdwActualDataDWORD*out実際に書き込まれた出力バイト数を受け取るポインター。
vtbl 9 HRESULT GetLastError(DWORD* pdwLastDeviceError)
pdwLastDeviceErrorDWORD*outデバイスで最後に発生したエラーコードを受け取るポインター。
vtbl 10 HRESULT LockDevice()
vtbl 11 HRESULT UnLockDevice()
vtbl 12 HRESULT RawReadData(void* lpBuffer, DWORD* lpdwNumberOfBytes, OVERLAPPED* lpOverlapped)
lpBuffervoid*out読み取ったデータを受け取るバッファー。
lpdwNumberOfBytesDWORD*inout入力時は要求バイト数、出力時は実読み取りバイト数を示すポインター。
lpOverlappedOVERLAPPED*inoptional非同期I/O用のOVERLAPPED構造体。同期時はNULL可。
vtbl 13 HRESULT RawWriteData(void* lpBuffer, DWORD nNumberOfBytes, OVERLAPPED* lpOverlapped)
lpBuffervoid*inデバイスへ書き込むデータを格納したバッファー。
nNumberOfBytesDWORDin書き込むデータのバイト数。
lpOverlappedOVERLAPPED*inoptional非同期I/O用のOVERLAPPED構造体。同期時はNULL可。
vtbl 14 HRESULT RawReadCommand(void* lpBuffer, DWORD* lpdwNumberOfBytes, OVERLAPPED* lpOverlapped)
lpBuffervoid*out読み取ったコマンド応答データを受け取るバッファー。
lpdwNumberOfBytesDWORD*inout入力時は要求バイト数、出力時は実読み取りバイト数を示すポインター。
lpOverlappedOVERLAPPED*inoptional非同期I/O用のOVERLAPPED構造体。同期時はNULL可。
vtbl 15 HRESULT RawWriteCommand(void* lpBuffer, DWORD nNumberOfBytes, OVERLAPPED* lpOverlapped)
lpBuffervoid*inデバイスへ送信するコマンドデータを格納したバッファー。
nNumberOfBytesDWORDin送信するコマンドのバイト数。
lpOverlappedOVERLAPPED*inoptional非同期I/O用のOVERLAPPED構造体。同期時はNULL可。
vtbl 16 HRESULT SetNotificationHandle(HANDLE hEvent)
hEventHANDLEinoptionalデバイス通知時にシグナル状態となるイベントハンドル。NULLで通知無効化。
vtbl 17 HRESULT GetNotificationData(STINOTIFY* lpNotify)
lpNotifySTINOTIFY*out直近のデバイス通知データを受け取るSTINOTIFY構造体。
vtbl 18 HRESULT GetLastErrorInfo(_ERROR_INFOW* pLastErrorInfo)
pLastErrorInfo_ERROR_INFOW*out直近のエラーの詳細情報を受け取る_ERROR_INFOW構造体。