Howdy ich bins wieder mal. Diesmal mit einem Error in meiner kleinen Batch.
Immer wenn ich sie starte, geht bis Zeile 13 alles gut, danach schließt er mit " ")" kann an dieser Stelle syntaktisch nicht verarbeitet werden ".
Ich habe keine Ahnung wieso. Ich wette ich hab irgendwo irgeneinen Fitzel übersehen, wäre nett wenn ihr mir helfen könntet .
Zur Funktionsweise:
Die soll mir auf Knopfdruck Hamachi schließen / starten, da einige Spiele (Age of Empires 3) Hamachi als primären LAN-Adapter erkennen und man somit immer erst ewig alles manuell deaktiveren muss, um LAN spielen zu können.
Dazu ließt er per netsh Befehl Namen (%%b bzw %2) und Status (%%a btw %1) aus und gibt diese in useNetworkAdapter weiter. Der prüft dann, ob der Adapter wirklich Hamachi ist oder mein normales LAN Kabel. Wenn ja, deaktiviert / aktiviert er ihn mitsamt zugehöriger Prozesse.
@ECHO OFF
For /f "skip=3 tokens=4*" %%a In ('NetSh Interface IPv4 Show Interfaces') Do (
echo Netzwerkname wird weitergegeben
Call :UseNetworkAdapter "%%a" "%%b"
)
Exit /B
:UseNetworkAdapter
echo Netzwerkname wurde weitergegeben
echo %2
echo %1
pause
if %2=="Hamachi" (
echo Netzwerkadapter ist Hamachi
pause
if %1=="connected" (
netsh interface set interface "Hamachi" disabled
echo Hamachi wurde deatkiviert
pause
::TASKKILL /F /IM hamachi-2.exe
::TASKKILL /F /IM hamachi-2-ui.exe
::TASKKILL /F /IM LMIGuardianSvc.exe
)
if %1=="disconnected" (
netsh interface set interface "Hamachi" enabled
echo Hamachi wurde atkiviert
pause
::start /d "E:\Programme\Hamachi" hamachi-2.exe
::start /d "E:\Programme\Hamachi" hamachi-2-ui.exe
::start /d "E:\Programme\Hamachi" LMIGuardianSvc.exe
)
)
pause
Exit /B
Alles anzeigen