Установка расширения драйвера для обработки ошибок WIA
Расширение обработки ошибок должно быть установлено вместе с драйвером WIA. Чтобы установить обработчик ошибок драйвера вместе с драйвером, необходимо выполнить небольшое количество дополнений в INF-файл драйвера.
В следующем примере показано, как можно изменить существующий INF-файл драйвера для включения обработчика ошибок.
MyDriver.AddReg]
...
HKCR,CLSID\{UiClassId}\shellex\ErrorHandler\{ErrorHandlerCLSID}
...
HKCR,CLSID\{ErrorHandlerCLSID },,,"My Error Handler"
HKCR,CLSID\{ErrorHandlerCLSID }\InProcServer32,,,%11%\myerrhandler.dll
HKCR,CLSID\{ErrorHandlerCLSID }\InProcServer32,ThreadingModel,,"Both"
...
[MyDriver.CopyFiles]
...
myerrhandler.dll
...
[SourceDisksFiles.x86]
...
myerrhandler.dll=1
...
Идентификатор класса {UiClassId} — это значение, возвращаемое драйвером для свойства WIA_DIP_UI_CLSID, а {ErrorHandlerCLSID} — идентификатор класса обработчика ошибок. В этом примере myerrhandler.dll содержит реализацию обработчика ошибок.
Первая запись в разделе AddReg заключается в регистрации обработчика ошибок в качестве расширения WIA для драйвера. Следующие три записи регистрируют обработчик ошибок в качестве com-компонента.
Значение ThreadingModel для расширения обработки ошибок должно иметь значение Оба.