Šta je novo?

Windows drivers

Robert

Slavan
Učlanjen(a)
13.01.2005
Poruke
106
Poena
319
Da li neko zna legalan naci da proverim da li se neki drajver ili servis podigao posle restarta ?
Neke API funkcije za proveri ili nesto slicno ?

Moja aplikacije se startuje automatski iz startup-a i pukne ako se drajver za AiLogix nije digao. Trenutno resenje je sto postoji pauza od 2 minuta i do tada se drajver sigurno podigao.
 
Pukne ti poziv API funkcije drajvera?

Da li znas kakav je to drajver i da li je to drajver ili servis?

Nema opsteg resenja za sve probleme.
Moras detaljnije opisati problem.
 
dok ne nađeš odgovarajući api možeš da probaš sledeće:

postoji sistemski program "sc" kojim možeš da proveriš stanje nekog servisa ili drajvera. startuj konzolu i ukucaj "sc query ailogix". ako ti ovaj pristup odgovara potrebno je da preko CreateProcess funkcije pokreneš ovaj program, preusmeriš output i parsiraš rezultat. ako programiraš u c# ili vb.net onda je još lakše, samo koristi Process klasu.

evo api-ja:

win32:

Kod:
SC_HANDLE sc = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
SC_HANDLE sr = OpenService(sc, "ime_servisa", SERVICE_ALL_ACCESS);
SERVICE_STATUS ss;
ZeroMemory(&ss, sizeof(ss));
if (!QueryServiceStatus(sr, &ss)) {
    // greška
}
CloseServiceHandle(sr);
CloseServiceHandle(sc);
if (ss.dwCurrentState == SERVICE_RUNNING) {
    // uradi nešto
}

.net:

http://www.codeproject.com/csharp/csservicecompcp.asp
 
Poslednja izmena od urednika:
dok ne nađeš odgovarajući api možeš da probaš sledeće:

postoji sistemski program "sc" kojim možeš da proveriš stanje nekog servisa ili drajvera. startuj konzolu i ukucaj "sc query ailogix". ako ti ovaj pristup odgovara potrebno je da preko CreateProcess funkcije pokreneš ovaj program, preusmeriš output i parsiraš rezultat. ako programiraš u c# ili vb.net onda je još lakše, samo koristi Process klasu.

Hvala bas mi je ovako nesto trebalo. Ovo cu da probam.:type:
 
mislim da je ipak bolje preko api-ja. to sam ti prvo predložio pošto tada nisam znao koje api-je treba koristiti.

p.s. moderator je spojio dva moja posta u jedan (ne logičan!) post iz meni ne poznatih razloga.
 
mislim da je ipak bolje preko api-ja. to sam ti prvo predložio pošto tada nisam znao koje api-je treba koristiti.

I mislio sam da probam preko API-ja. :)
Citirao sam pocetni tekst cisto da se zna kome odgovaram, a source kod sam obrisao da ne bude predugacak citat.
 
Vrh Dno