Поделиться через


Установка расширения драйвера для обработки ошибок 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 для расширения обработки ошибок должно иметь значение Оба.