|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Jul 2002
Messaggi: 94
|
Interrogare lo stato di un servizio
Ciao a tutti,
come si puo' interrogare un servizio per sapere se e' attivo o stoppato ed eventualmente applicare una condizione? es. if sc.exe tvservice = "stop" then start tvservice. Spero di essermi spiegato. Grazie. |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Oct 2005
Messaggi: 290
|
a dire il vero non ti sei spiegato molto bene, ( soprattutto non dici in quale linguaggio vuoi realizzare una cosa del genere), comunque per realizzare una funzione di quel tipo leggiti per bene il funzionamento del Service Control Manager (un'ottima fonte in questi casi come sempre è il microsoft developer network, però tutto il codice di esempio è in c/c++): in pratica è un database che tu interroghi per conoscere lo stato di un servizio e per modificarlo (ci penserà poi lui a comunicarlo al servizio). Poi dovrai verificare che il servizio si comporti di conseguenza, ma questi poi sono problemi successivi.
se hai altri dubbi chiedi pure, ciauz ![]()
__________________
_______________________________________________ AMD Athlon64 3500+, Cooler Master Hyper 6, Asus A8V Deluxe wifi-g Rev2.0, Corsair TwinX-1024 Pc3200XL Platinum, Western Digital Raptor 74GB, Cooler Master CoolDrive 4, Sapphire Radeon 9600XT 256MB, Sound Blaster Audigy Player, Cambridge Soundworks 4.0, Enermax Coolergiant EG485p/ax, Lg Flatron L1952S --- Acer Aspire 5024 ![]() Apple MacBook Pro 13" 2.53GHz ![]() |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jul 2002
Messaggi: 94
|
Grazie Vender della risposta,
a dire il vero intendevo fare un semplice batch, utilizzando i comandi net.exe e sc.exe. L'unica esperienza di programmazione che ho risale al basic dei Vic 20, qualche secolo fa ![]() Vorrei semplicemente riavviare un servizio di windows solo nel caso che non sia gia' avviato, tutto li'. Ultima modifica di Fabolus : 22-05-2008 alle 23:01. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
un po' spartano ma dovrebbe essere quel che ti serve
Codice:
set SVCNAME="Ora di Windows" net start | find %SVCNAME% if ERRORLEVEL==1 net start %SVCNAME%
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Jul 2002
Messaggi: 94
|
|
![]() |
![]() |
![]() |
#6 | |
Member
Iscritto dal: Oct 2005
Messaggi: 290
|
Quote:
![]() ed hai anche già risolto tutto.. meglio di così! cmq se ti serve il corrispettivo di net start per fermare un servizio è net stop.. così puoi gestirli alla grande! ed in effetti è ben più semplice che con un linguaggio di programmazione vero e proprio.. mica male! ciauz
__________________
_______________________________________________ AMD Athlon64 3500+, Cooler Master Hyper 6, Asus A8V Deluxe wifi-g Rev2.0, Corsair TwinX-1024 Pc3200XL Platinum, Western Digital Raptor 74GB, Cooler Master CoolDrive 4, Sapphire Radeon 9600XT 256MB, Sound Blaster Audigy Player, Cambridge Soundworks 4.0, Enermax Coolergiant EG485p/ax, Lg Flatron L1952S --- Acer Aspire 5024 ![]() Apple MacBook Pro 13" 2.53GHz ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:23.