A lot of you seem to not understand...
In Windows:
Windows App v TWAIN v TWAIN backend (scanner-specific) v (other vendor-specific components) v STI (made by Microsoft) v STI minidriver (made by vendor) v KERNEL32.DLL (ReadFile, WriteFile, DeviceIoControl) | (user mode) --+--------------- | (kernel mode) v USBSCAN.SYS (or SCSISCAN.SYS, infrared, serial etc. drivers) (made by Microsoft) v Scanner (made by vendor)
One only hopes that most scanners work that way. The STI minidriver is free to open any device, not necessarily xxxSCAN.sys made by Microsoft.
Now, if the majority works that way, then I guess we're all set.
Kuba