Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];

Вниз

Установка и удаление Драйвера! Чет я запутался или что-то не то   Найти похожие ветки 

 
NikNet ©   (2005-06-13 00:26) [0]

Вообщем что я не так сделал

Function InstallDrv(DriverName:string):String;
var
   hSCM, hSRV : THandle;
begin
   Result:="";
   hSCM := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
   IF hSCM = INVALID_HANDLE_VALUE  Then
   Result:="OpenSCManager "+#13#10;
   // ñîçäàíèå ñèñòåìíîé çàïèñè î äðàéâåðå
   hSRV := CreateService(
   hSCM,
   PChar(DriverName),
   PChar(DriverName),
   SERVICE_ALL_ACCESS,
   SERVICE_KERNEL_DRIVER,
   SERVICE_DEMAND_START,
   SERVICE_ERROR_NORMAL,
   PChar(ExtractFilePath(ParamStr(0))+DriverName),
   nil,
   nil,
   nil,
   nil,
   nil);
   IF hSRV = INVALID_HANDLE_VALUE THEN
   Result:=Result+"CreateService "+#13#10;
   // î÷èñòêà ðåñóðñîâ
   IF not CloseServiceHandle(hSRV) Then
   Result:=Result+"SRV: CloseServiceHandle"+#13#10;
   IF not CloseServiceHandle(hSCM) Then
   Result:=Result+"SCM: CloseServiceHandle"+#13#10;
   IF not StartService(hSrv,0,PChar(lpServiceArgVectors)) Then
   Result:=Result+"StartService"+#13#10;
end;

Function RemoveDrv(DriverName:string):String;
var
   hSCM, hSRV : THandle;
   Status     : TServiceStatus;
begin
  Result:="";
  hSCM := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
  IF hSCM = INVALID_HANDLE_VALUE Then
  Result:=Result+"OpenSCManager "+#13#10;
  hSRV := OpenService(hSCM,PChar(DriverName), SERVICE_ALL_ACCESS);
  IF hSRV = INVALID_HANDLE_VALUE THEN
  Result:=Result+"OpenService"+#13#10;
  IF not ControlService(hSRV,SERVICE_CONTROL_STOP,Status) then
  Result:=Result+"ControlService"+#13#10;
  IF not DeleteService(hSrv) Then
  Result:=Result+"DeleteService"+#13#10;
  IF not CloseServiceHandle(hSRV) Then
  Result:=Result+"SRV: CloseServiceHandle"+#13#10;
  IF not CloseServiceHandle(hSCM) Then
  Result:=Result+"SCM: CloseServiceHandle"+#13#10;
end;


 
NikNet ©   (2005-06-13 00:32) [1]

Во-общим ошибки при удаление!

Что-то ControlService выводит Ошибку... (False)


 
VMcL ©   (2005-06-13 10:18) [2]

>Что-то ControlService выводит Ошибку... (False)

И что по этому поводу говорит RaiseLastOSError?


 
Ученик   (2005-06-13 19:53) [3]

>NikNet ©   (13.06.05 00:26)  
В любом случае, после команды Stop, необходимо дожидаться остановки драйвера (сервиса)


 
NikNet ©   (2005-06-13 20:17) [4]

Я пробывал и так и сяк не чего :(


 
Ученик   (2005-06-13 20:21) [5]

>NikNet ©   (13.06.05 20:17) [4]

Может текст ошибки все-таки сообщите :-)


 
Anatoly Podgoretsky ©   (2005-06-13 20:25) [6]

Ученик   (13.06.05 20:21) [5]
Два бакса.


 
Ученик   (2005-06-13 20:29) [7]

>Anatoly Podgoretsky ©   (13.06.05 20:25) [6]
Да, пожалуйста :-)

http://www.britishmint.com/money_stalk_of_bills100.jpg


 
MS-MEN ©   (2005-06-13 20:44) [8]

IF ControlService(hSRV,SERVICE_CONTROL_STOP,Status) then
 Result:=Result+"ControlService"+#13#10;



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
11-1105444581
admdenis
2005-01-11 14:56
2005.08.14
Constructor в KOL?


14-1122021392
крот
2005-07-22 12:36
2005.08.14
Кто сидит на кухне?


1-1122551928
vigo
2005-07-28 15:58
2005.08.14
Вопрос по TOpenDialog


3-1120799709
АМБ
2005-07-08 09:15
2005.08.14
Программное создание DBF таблиц


14-1122102943
NewWonder
2005-07-23 11:15
2005.08.14
Перспективы средств разработки.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский