Пожалуйста скажите почему используя данный код, взятый из KmdKit я не могу зарегистрировать драйвер. Вот код: .386 .model flat, stdcall option casemap:none ;include \masm32\include\windows.inc include \KmdKit\include\kernel32.inc include \KmdKit\include\user32.inc include \KmdKIt\include\advapi32.inc include \KmdKit\lib\kernel32.lib include \KmdKit\lib\user32.lib include \KmdKit\lib\advapi32.lib include \KmdKit\Macros\Strings.mac .code start proc local hSCManager:HANDLE local hService:HANDLE local acDriverPath[MAX_PATH]:CHAR invoke OpenSCManager, NULL, NULL, SC_MANAGER_CREATE_SERVICE .if eax != NULL mov hSCManager,eax push eax invoke GetFullPathName, $CTA0("si.sys"), sizeof acDriverPath, addr acDriverPath, esp pop eax invoke CreateService, hSCManager, $CTA0("si"), $CTA0("My first Driver"), \ SERVICE_START + DELETE, SERVICE_KERNEL_DRIVER, SERVICE_DEMAND_START, \ SERVICE_ERROR_IGNORE, addr acDriverPath, NULL, NULL, NULL, NULL, NULL .if eax != NULL mov hService, eax invoke StartService, hService, 0, NULL .else invoke MessageBox, NULL, $CTA0("Can't register driver."), NULL, MB_ICONSTOP .endif .else invoke MessageBox, NULL, $CTA0("Can't connect to Service Control Manager."), \ NULL, MB_ICONSTOP .endif invoke ExitProcess, 0 start endp Выдает Can't register driver Значит не работает CreateService с помощью GetLastError получаю ошибку : Invalid Handle самое интререстное что это уже получалось с другим драйвером и все нормально работало вроде бы ничего в коде не изменял Помогите!!!!!!!!!!!!
Дата: Апр 29, 2006 00:46:20 Цитата SC_MANAGER_ALL_ACCESS не пробовал? Пробовал все равно нет результата
Попробуй 'si' заменить на что-нибудь, оно должно быть уникальным, вроде. Если глупость сказал, прошу не пинать, не занимался дровами.