PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Batch Datei Ausgabe auswerten


Morpog
2008-07-06, 00:04:24
Hallo, komme leider nicht mehr weiter und brauche eure Hilfe.

Mit devcon kann ich Hardware anhand ihrer ID enablen und disablen.
Ausserdem kann ich den satus der ID auslesen, also ob zur Zeit enabled oder disabled.
Soweit so gut.

Jetzt möchte ich aber meine Batchdatei so haben, dass wenn enabled ist der Befehl zum disablen ausgeführt wird und umgekehrt natürlich auch.

Hab schon versucht das ganze per errorlevel zu machen, aber da komme ich nicht weiter.

Hier mal der Code soweit ich es habe:

@echo off

:status
c:\windows\devcon.exe status

"PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"

echo hier sollte die Abfrage hin

:einschalten

c:\windows\devcon.exe enable

"PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"
pause

:ausschalten

c:\windows\devcon.exe disable

"PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"
pause


Wenn ich den Befel für Status einzeln ausführe erscheint das hier:

PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02\3&11583659&0&E9
Name: Intel(R) 82801G (ICH7 Family) USB Universal Host Controller - 27C9
Device is disabled.
1 matching device(s) found.

Oder eben enabled.

Morpog
2008-07-06, 01:27:43
Habs nochmal überarbeitet und mit meinen laien Fähigkeiten schon fast hinbekommen.

@echo off

:status
c:\windows\devcon.exe status "PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02" > %windir%\usbstatus.txt

find /i "enabled." %windir%\usbstatus.txt
if errorlevel 0 goto ausschalten else goto einschalten

:einschalten
c:\windows\devcon.exe enable "PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"
goto end

:ausschalten
c:\windows\devcon.exe disable "PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"
goto end

:end

das else verweigert den Dienst :(

Morpog
2008-07-06, 01:31:44
Kommando zurück! Genau andersrzm gehts, also mit errorlevel 1 statt 0 und die if abfrage umgestellt.

Versteh ich zwar nicht, aber Hauptsache es funktioniert :)

@echo off

:status
c:\windows\devcon.exe status "PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02" > %windir%\usbstatus.txt

find /i "disabled." %windir%\usbstatus.txt
if errorlevel 1 goto ausschalten else goto einschalten

:einschalten
c:\windows\devcon.exe enable "PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"
goto end

:ausschalten
c:\windows\devcon.exe disable "PCI\VEN_8086&DEV_27C9&SUBSYS_01101462&REV_02"
goto end

:end