次の方法で共有


省略可能なコマンド

次のコマンドはマイクロドライバーによって実装できますが、これを行う必要はありません。

CMD_GETSUPPORTEDFILEFORMATS

追加のファイル形式の数を取得するために WIA フラットベッド ドライバーによって呼び出されます。 渡された VAL 構造体の 2 つのメンバーを入力する必要があります。 lVal は追加のファイル形式の数に設定する必要があります。 pGuid は、イメージ形式の GUID の配列を指す必要があります。 この配列に割り当てられたメモリはマイクロドライバーが所有しており、マイクロドライバーだけが解放することができます。

イメージ形式は wiadef.h で一覧表示されるか、カスタム形式として定義できます。 BMP (ファイル) 形式と MEMORYBMP (メモリ) 形式は必須の形式であるため、WIA フラットベッド ドライバーによって自動的に追加されることに注意してください。 マイクロドライバーは、それらを自分の拡張リストに追加しないでください。

デバイスが追加のファイル形式をサポートできない限り、このコマンドは省略可能です。

CMD_GETSUPPORTEDMEMORYFORMATS

追加のメモリ形式の数を取得するために WIA フラットベッド ドライバーによって呼び出されます。 渡された VAL 構造体の 2 つのメンバーを入力する必要があります。 lVal は追加のメモリ形式の数に設定する必要があります。 pGuid は、イメージ形式の GUID の配列を指す必要があります。 この配列に割り当てられたメモリはマイクロドライバーが所有しており、解放できるのはマイクロドライバーだけです。

イメージ形式は wiadef.h で一覧表示されるか、カスタム形式として定義できます。 BMP (ファイル) 形式と MEMORYBMP (メモリ) 形式は必須の形式であるため、WIA フラットベッド ドライバーによって自動的に追加されることに注意してください。 マイクロドライバーは、それらを拡張リストに追加しないでください。

このコマンドは、デバイスが追加のメモリ形式をサポートできる場合を除き、省略可能です。

CMD_SETFORMAT

クラス ドライバーは、アプリケーションによって要求された現在の形式を設定するには、このコマンドを送信します。 VAL 構造体の pGuid メンバーには、イメージ形式の GUID が含まれています。 マイクロドライバーは、現在のイメージ形式設定を追跡するために、このイメージ形式 ID をプライベート コンテキストに保存する必要があります。

マイクロドライバーは、拡張形式を報告する場合にのみ、このコマンドをサポートする必要があります。 クラス ドライバーには拡張形式のデータを検証する方法がないため、適切なデータを生成するのはマイクロドライバーの責任です。 拡張形式でデータを転送する場合は、画像ヘッダーを含むすべてのデータを転送する必要があります。 たとえば、ドライバーが JPEG 形式をサポートしていると報告する場合は、画像ビットだけでなく、すべての JPEG を転送する必要があります。

クラス ドライバーは、VAL 構造体の pGuid メンバーが指すメモリを所有しているため、マイクロドライバーはメモリを解放できません。

このコマンドは、マイクロドライバーが Scan 関数の呼び出しに応答する方法には影響しないことに注意してください。 通常どおり、マイクロドライバーは、この関数の lPhasepScanInfoおよび lLength パラメーターの値を確認し、必要に応じて pBuffer パラメーターと pReceived パラメーターが指すバッファーにデータを配置する必要があります。

WiaImgFmt_BMP形式とWiaImgFmt_MEMORYBMP形式のファイルのみをサポートするドライバー (マイクロドライバーの既定の形式) は、CMD_SETFORMAT コマンドを受け取ることができます。 クラス ドライバーは既定の形式を使用してすべてのデータ転送を処理するため、これらのドライバーは、このコマンドを無視できます。

CMD_SETSCANMODE

マイクロドライバーのデバイスのスキャン モード (プレビューまたは最終) を設定するために、WIA フラットベッド ドライバーによって呼び出されます。 VAL 構造体の lVal メンバーには次のいずれかの値が含まれます。どちらも wiamicro.h で定義されています。

  • SCANMODE_PREVIEWSCAN - プレビュー スキャン モード

  • SCANMODE_FINALSCAN - 最終スキャン モード

CMD_SETSTIDEVICEHKEY

インストールされているレジストリ セクションのレジストリ エントリをマイクロドライバーが読み取ることができるように、WIA フラットベッド ドライバーによって呼び出されます。 このコマンドは、STIデバイスのインストールされたレジストリHKEYをマイクロドライバーに提供し、そのデバイスのプライベートレジストリ値にアクセスできるようにします。 VAL 構造体の pHandle メンバーには、STI の IStiUSD::Initialize メソッド中に WIA フラットベッド ドライバーに指定された HKEY へのポインターが含まれます。 これは、インストールされているデバイス セクションの最上位の HKEY です。 DeviceData キーは、この HKEY を使用して直接開くことができます。 詳細については、 WIA デバイスの INF ファイル を参照してください。

このキーは、WIA フラットベッド ドライバー によってのみ 開き、閉じられます。 また、このコマンドとCMD_INITIALIZE中にのみ有効です ( 「必須コマンド」を参照)。 これらのコマンドが戻った後、キーは無効になります。 HKEY 値はキャッシュ できません