Perintah yang Diperlukan

Set perintah yang diperlukan berikut harus diimplementasikan oleh setiap microdriver.

CMD_GETCAPABILITIES

Dipanggil oleh WIA Flatbed Driver untuk mendapatkan informasi peristiwa tombol. Tiga anggota struktur VAL yang dilewatkan harus diisi: lVal harus diatur ke jumlah tombol; pGuid harus diatur ke array GUID peristiwa; ppButtonNames secara opsional dapat diatur ke array WCHAR* yang berisi nama tombol dalam urutan yang sama seperti dalam pGuid (misalnya, "Tombol Pindai" atau "Tombol Faks"). Jika ppButtonNames diatur ke NULL, Driver Flatbed WIA akan membuat nama tombol generik. Array dapat dialokasikan sebagai respons terhadap CMD_INITIALIZE, dan dibebaskan dalam CMD_UNINITIALIZE.

CMD_INITIALIZE

Dipanggil oleh Driver Flatbed WIA untuk menginisialisasi microdriver dan mengatur handel I/O perangkat ke nilai yang valid. Perintah ini akan dikirim ke microdriver ketika layanan WIA memanggil metode IWiaMiniDrv::d rvInitializeWia pada WIA Flatbed Driver.

Driver Flatbed WIA akan secara otomatis membuat satu handel I/O perangkat dan memasukkannya ke dalam anggota array DeviceIOHandles dari struktur SCANINFO yang diteruskan pada indeks 0. Microdriver harus menggunakan handel ini ketika perlu berkomunikasi dengan perangkat. Jika microdriver memerlukan handel perangkat tambahan (misalnya, untuk menggunakan beberapa pipa USB massal), mereka dapat dibuat dan disimpan dalam array DeviceIOHandles hingga jumlah maksimum MAX_IO_HANDLES. Driver Flatbed WIA akan secara otomatis menutup handel pada indeks 0, karena membuat handel tersebut selama inisialisasi. Handel lainnya harus ditutup oleh microdriver sebagai respons terhadap CMD_UNINITIALIZE.

Sebagai bagian dari perintah ini, microdriver juga harus menginisialisasi semua nilai dalam struktur SCANINFO . Microdriver harus mengatur anggota SupportedDataTypes, IntensityRange, ContrastRange, BedWidth, dan BedHeight dari struktur SCANINFO, sehingga WIA Flatbed Driver dapat secara otomatis memvalidasi nilai-nilai ini terhadap rentang hukum untuk perangkat.

CMD_RESETSCANNER

Dipanggil oleh Wia Flatbed Driver untuk mengatur ulang perangkat sebagai respons terhadap permintaan layanan WIA. Microdriver harus mengatur perangkat ke status dayanya. Di Windows Vista, Driver Flatbed WIA tidak menggunakan perintah ini. Namun, microdriver harus terus mendukung perintah ini untuk memastikan operasi yang benar di Windows XP dan, mungkin, dengan versi WIA Flatbed Driver yang akan datang yang mungkin menggunakan perintah ini.

CMD_SETDATATYPE

Dipanggil oleh Driver Flatbed WIA untuk mengatur jenis data untuk pemindaian. Salah satu nilai berikut diteruskan dalam anggota lVal dari struktur VAL yang dilewatkan:

  • WIA_DATA_THRESHOLD − hitam/putih 1-bit

  • WIA_DATA_GRAYSCALE − skala abu-abu 8-bit

  • WIA_DATA_COLOR − Warna 24-bit

Microdriver harus menyimpan nilai di anggota DataType dari struktur SCANINFO yang dilewatkan.

CMD_SETCONTRAST

Dipanggil oleh WIA Flatbed Driver untuk mengatur nilai kontras untuk pemindaian. Nilai kontras yang diinginkan diteruskan dalam anggota lVal dari struktur VAL yang dilewatkan. Nilai −1000 harus ditafsirkan sebagai nilai kontras terendah, 0 nominal, dan 1000 kontras maksimum perangkat. Microdriver harus menyimpan nilai dalam anggota Kontras dari struktur SCANINFO yang dilewatkan.

CMD_SETINTENSITY

Dipanggil oleh WIA Flatbed Driver untuk mengatur nilai intensitas atau kecerahan untuk pemindaian. Nilai intensitas yang diinginkan diteruskan dalam anggota lVal dari struktur VAL yang dilewatkan. Nilai −1000 harus ditafsirkan sebagai nilai kecerahan terendah, 0 nominal, dan 1000 kecerahan maksimum perangkat. Microdriver harus menyimpan nilai dalam anggota Intensitas struktur SCANINFO yang dilewatkan.

CMD_SETXRESOLUTION

Dipanggil oleh Wia Flatbed Driver untuk mengatur resolusi pemindaian horizontal. Resolusi yang diinginkan dalam piksel diteruskan di anggota lVal dari struktur VAL yang dilewatkan. Microdriver harus menyimpan nilai dalam anggota XResolution dari struktur SCANINFO yang dilewatkan.

CMD_SETYRESOLUTION

Dipanggil oleh Wia Flatbed Driver untuk mengatur resolusi pemindaian vertikal. Resolusi yang diinginkan dalam piksel diteruskan di anggota lVal dari struktur VAL yang dilewatkan. Microdriver harus menyimpan nilai di anggota YResolution dari struktur SCANINFO yang dilewatkan.

CMD_STI_DEVICERESET

Dipanggil oleh Driver Flatbed WIA untuk mengatur ulang perangkat sebagai respons terhadap permintaan Gambar Diam (STI). Perintah ini biasanya disebut hanya sekali, selama inisialisasi.

CMD_STI_DIAGNOSTIC

Dipanggil oleh Driver Flatbed WIA ketika pengguna meminta pengujian perangkat.

CMD_UNINITIALIZE

Batalkan inisialisasi microdriver dan tutup handel I/O Perangkat. Driver Flatbed WIA akan secara otomatis menutup handel I/O perangkat di anggota array DeviceIOHandles dari struktur SCANINFO , pada indeks 0. Perintah ini akan dikirim ke microdriver ketika driver Flatbed WIA sedang dibongkar.