![]() |
Ping per Script schlägt immer fehl
Hi
ich habe einige S*****s die Aufgrund eines Pings feststellen ob eine Internetverbindung besteht. Schlägt der Ping fehl werden einige Befehle wie "Ipconfig /release" usw. gestartet. Wenn ich diese S*****s starte schlägt der Ping jedesmal fehl. Manuell in cmd geht es einwandfrei. Ich verwende Win 7 x64 mit mse und win fw. Kann sich jmd den Code kurz durchsehen nund mir sagen wieso es nicht geht. S***** A: @echo off
TITLE Network Fix S***** echo ---------------------------- echo + + echo + The ResNet + echo + Network Fix + echo + + echo ---------------------------- echo. echo This tool will reset some basic internet configuration settings. echo. pause cls echo Checking connection status, please wait... PING -n 2 [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] "Reply from " >NUL IF NOT ERRORLEVEL 1 goto :internet IF ERRORLEVEL 1 goto :nointernet cls echo An unspecified error has occured... echo. pause exit :internet cls echo Hmmm... internet connection appears to be working. The s***** will now finish. echo. pause exit :nointernet cls echo Hmmm... internet connection appears down. echo. pause echo. echo Backing up network interface information netsh interface dump > C:\netcfg.dat echo. echo Removing hardcoded IPs... echo. netsh interface ip set address "Local Area Connection" dhcp netsh interface ip set address "Wireless Network Connection" dhcp netsh interface ip set dns "Local Area Connection" dhcp netsh interface ip set dns "Wireless Network Connection" dhcp echo. echo Reinstalling TCP/IP and resetting Winsock... echo. netsh interface ip reset netsh winsock reset netsh winsock reset catalog echo Removing and registering DNS... echo. ipconfig /flushdns ipconfig /registerdns echo Releasing and Renewing IP addresses... ipconfig /release ipconfig /renew echo Removing proxy settings... echo. reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\In ternet Settings" /v "ProxyEnable" /f reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\In ternet Settings" /v "ProxyEnable" /f echo Setting the DHCP service to autostart... echo. "sc config Dhcp start= auto" echo Setting the Application Layer Gateway service to autostart... echo. "sc config ALG start= auto" echo Setting the Network Location Awareness service to autostart... echo. "sc config nla start= auto" echo Setting the firewall service to autostart... echo. "sc config sharedaccess start= auto" echo. echo Disabling the current HOSTS file... echo. "ATTRIB -s -h -r %windir%\system32\drivers\etc\hosts" ren "%windir%\system32\drivers\etc\hosts" "hosts.old" echo Resetting firewall settings... echo. netsh firewall set opmode disable netsh firewall reset netsh advfirewall reset netsh firewall set opmode enable echo. echo. echo ------------------------------------------------------------ echo + + echo + This removal tool has completed the network fix. + echo + The computer will restart itself, please save your + echo + work and press any key to continue. + echo + + echo + + echo ------------------------------------------------------------ pause :shutdown SHUTDOWN -r -t 20 S***** B: On Error Resume Next
Dim strTarget, strPingResults, val, val2 begAnswer = _ Msgbox("Do you want to run the internet connection test?", _ vbYesNo, "James' Internet Connection Fixer") If begAnswer = vbYes Then strTarget = "google.com" 'IP address or hostname used to check connectivity Set WshShell = WS*****.CreateObject("WS*****.Shell") Set WshExec = WshShell.Exec("ping -n 3 -w 2000 " & strTarget) 'send 3 echo requests, waiting 2 seconds each strPingResults = LCase(WshExec.StdOut.ReadAll) If InStr(strPingResults, "reply from") Then MsgBox "Internet connection currently active.... now exiting",15,"The Internetz Workz!" Else intAnswer = _ Msgbox("Internet connection currently down.... this s***** will do the following:" & vbCr & "-Remove Internet Explorer proxy" & vbCr & "-Release IP/Flush DNS/Renew IP" & vbCr & "-Rebuild winsock" & vbCr & "-Opens the HOSTS file in notepad" & vbCr & vbCr & "Continue? (requires reboot). Clicking 'No' will exit the program.", _ vbYesNo, "Continue?") If intAnswer = vbYes Then val = "HKCU\Software\Microsoft\Windows\CurrentVersion\In ternet Settings\ProxyEnable" val2 = "HKLM\Software\Microsoft\Windows\CurrentVersion\In ternet Settings\ProxyEnable" WSHShell.RegDelete val WSHShell.RegDelete val2 WshShell.Run "cmd" WS*****.Sleep 500 wshshell.sendkeys "ipconfig /release" WS*****.Sleep 80 wshshell.sendkeys "{ENTER}" WS*****.Sleep 80 wshshell.sendkeys "ipconfig /flushdns" WS*****.Sleep 80 wshshell.sendkeys "{ENTER}" WS*****.Sleep 80 wshshell.sendkeys "netsh winsock reset" WS*****.Sleep 80 wshshell.sendkeys "{ENTER}" WS*****.Sleep 80 wshshell.sendkeys "netsh winsock reset catalog" WS*****.Sleep 80 wshshell.sendkeys "{ENTER}" WS*****.Sleep 80 wshshell.sendkeys "ipconfig /registerdns" WS*****.Sleep 80 wshshell.sendkeys "{ENTER}" WS*****.Sleep 80 wshshell.sendkeys "sc config Dhcp start= auto" WS*****.Sleep 80 wshshell.sendkeys "{ENTER}" WS*****.Sleep 80 wshshell.sendkeys "exit" WS*****.Sleep 80 WshShell.Run("ipconfig /renew") WshShell.Run("ATTRIB -s -h -r %windir%\system32\drivers\etc\hosts") strComputer = "." Set objWMIService = GetObject _ ("winmgmts:" & "!\\" & strComputer & "\root\cimv2") Set colFiles = objWMIService.ExecQuery _ ("Select * from Cim_Datafile where Name = " _ & "'C:\\WINDOWS\\System32\\Drivers\\etc\hosts'") For Each objFile in colFiles errResult = objFile.Rename("C:\WINDOWS\System32\Drivers\etc\ho sts.old") Ws*****.Echo errResult Next WshShell.Run("notepad %windir%\system32\drivers\etc\hosts") intAnswer = _ Msgbox("You must reboot to apply new settings. Reboot now?", _ vbYesNo, "Reboot Now?") If intAnswer = vbYes Then WshShell.Run("shutdown -r -t 30") Else Msgbox "Please reboot ASAP" End If Else Msgbox "You answered no. Goodbye." End If End If Else Msgbox "You answered no. Goodbye." End If S***** C: @ECHO OFF
COLOR F1 ECHO. > %WINDIR%\SYSTEM32\NDT.TST IF EXIST %WINDIR%\SYSTEM32\NDT.TST (SET ADMIN=YES) ELSE (SET ADMIN=NO) IF EXIST %WINDIR%\SYSTEM32\NDT.TST DEL %WINDIR%\SYSTEM32\NDT.TST IF %ADMIN%==NO GOTO ADMIN SET OPTION=X SET DNSRESET=X SET DNSDHCP=X SET REDIR=X SET PROXY=0x0 SET IEOFFLINE=0x0 IF EXIST C:\RESETLOG-NDT.TXT DEL C:\RESETLOG-NDT.TXT :DETECT IPCONFIG |FIND "adapter" >NUL IF %ERRORLEVEL%==1 GOTO NONIC FOR /F "TOKENS=3" %%A IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\In ternet Settings" /V ProxyEnable') DO SET PROXY=%%A FOR /F "TOKENS=3" %%A IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\In ternet Settings" /V GlobalUserOffline') DO SET IEOFFLINE=%%A VER | findstr /i "6\.0\." >NUL IF %ERRORLEVEL%==0 GOTO V4 VER | findstr /i "6\.1\." >NUL IF %ERRORLEVEL%==0 GOTO V4 SET VER=XP SET IPVER=IP GOTO IP :V4 SET VER=VIS7 SET IPVER=IPv4 :IP IPCONFIG |FIND "%IPVER%" > %TEMP%\TEMPIP.TXT IF %ERRORLEVEL%==1 GOTO NONET FOR /F "TOKENS=2 DELIMS=:" %%A IN (%TEMP%\TEMPIP.TXT) DO SET IP=%%A DEL %TEMP%\TEMPIP.TXT SET IP=%IP:~1% ECHO %IP% > %TEMP%\RANGE.TXT FOR /F "TOKENS=1,2 DELIMS=." %%A IN (%TEMP%\RANGE.TXT) DO SET LB=%%A.%%B FOR /F "TOKENS=1-3 DELIMS=." %%A IN (%TEMP%\RANGE.TXT) DO SET RANGE=%%A.%%B.%%C DEL %TEMP%\RANGE.TXT IF %LB%==169.254 GOTO DHCPERROR IF %RANGE%==192.168.1 SET ROUTER=ROUTER1 IF %RANGE%==192.168.0 SET ROUTER=ROUTER2 IF %RANGE%==10.1.10 SET ROUTER=ROUTER3 NETSH INT IP SHOW CONFIG > %TEMP%\DHCP.TXT FIND "Yes" %TEMP%\DHCP.TXT >NUL IF %ERRORLEVEL%==1 (SET DHCP=STATIC) ELSE (SET DHCP=ENABLED) FIND "DNS servers configured through DHCP" %TEMP%\DHCP.TXT >NUL IF %ERRORLEVEL%==1 (SET DNS=STATIC) ELSE (SET DNS=DHCP) DEL %TEMP%\DHCP.TXT :TEST ECHO. ECHO Checking connection... ECHO. PING -n 1 google-public-dns-a.google.com|FIND "Reply from " > %TEMP%\IPR.TXT FOR /F "TOKENS=3" %%A IN (%TEMP%\IPR.TXT) DO SET IPG=%%A IF EXIST %TEMP%\IPR.TXT DEL %TEMP%\IPR.TXT IF NOT "%IPG%"=="8.8.8.8:" GOTO REDIRECT IF "%IPG%"=="8.8.8.8:" GOTO SUCCESS :TRYAGAIN ECHO First attempt failed ECHO Making another attempt... ECHO. PING -n 3 [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] "Reply from " >NUL IF %ERRORLEVEL%==0 GOTO SUCCESS2 :TRYIP ECHO External domain name failed ECHO. ECHO Checking DNS... ECHO. PING -n 1 8.8.8.8|FIND "Reply from " >NUL IF %ERRORLEVEL%==0 (GOTO SUCCESSDNS) ELSE (GOTO %ROUTER%) :ROUTER1 ECHO No WAN appears to be available ECHO Lets try pinging the router.... ECHO. PING -n 2 192.168.1.1|FIND "Reply from " >NUL IF %ERRORLEVEL%==0 (GOTO ROUTERSUCCESS) ELSE (GOTO NETDOWN) :ROUTER2 ECHO No WAN appears to be available ECHO Lets try pinging the router.... ECHO. PING -n 2 192.168.0.1|FIND "Reply from " >NUL IF %ERRORLEVEL%==0 (GOTO ROUTERSUCCESS) ELSE (GOTO NETDOWN) :ROUTER3 ECHO No WAN appears to be available ECHO Lets try pinging the router.... ECHO. PING -n 2 10.1.10.1|FIND "Reply from " >NUL IF %ERRORLEVEL%==0 (GOTO ROUTERSUCCESS) ELSE (GOTO NETDOWN) :ROUTERSUCCESS SET TEST=No WAN Available ECHO. ECHO Error Detected! ECHO It appears that you can reach the router, but internet is unreachable. GOTO FAILURE :NETDOWN SET TEST=No Network is responding ECHO. ECHO Error Detected! ECHO Your router is not responding IF %DHCP%==STATIC GOTO DYNAMIC GOTO FAILURE :DHCPERROR SET TEST=System has a loopback address SET DHCP=LOOPBACK ECHO. ECHO Error Detected! ECHO DHCP Error ECHO You do not have a valid IP address. GOTO RESET :SUCCESSDNS SET TEST=Domain name resolution problem ECHO. ECHO Error Detected! ECHO It appears that you are having DNS issues. ECHO. GOTO DNSFAIL :SUCCESS SET TEST=Connection is OK ECHO You have an active Internet connection. ECHO. GOTO SUCCESS.1 :SUCCESS2 SET TEST=Connection is up, but with interference ECHO You have an active internet connection but errors were detected. ECHO. :SUCCESS.1 IF %PROXY%==0x1 GOTO PROXCHO :SUCCESS.1A IF %IEOFFLINE%==0x1 GOTO IEOFFLINE :SUCCESS.1B ECHO If you can not bring up a webpage, check your internet options ECHO. :SUCCESS2.1 ECHO Open Internet Options? SET /P IEOP=Enter Y or N: IF /I %IEOP%==Y GOTO IEOPTIONS IF /I %IEOP%==N GOTO OPTIONS ECHO Invalid option. Please try again GOTO SUCCESS2.1 :FAILURE ECHO. ECHO You do not have an active Internet connection ECHO. ECHO. :OPTIONS ECHO __________________________________________________ ______________________________ ECHO *** REPAIR OPTIONS *** IF EXIST C:\RESETLOG-NDT.TXT ( ECHO. ECHO If your system has not been rebooted since INTERFACE RESET ran ECHO Please do so before making further changes ) ECHO. ECHO Your IP Address is %IP% ECHO. IF %PROXY%==0x1 (ECHO *** IE proxy is enabled ***) ELSE (ECHO IE proxy is disabled) IF %IEOFFLINE%==0x1 (ECHO *** IE is set to work offline ***) ELSE (ECHO IE is set to work online) IF %DHCP%==STATIC (ECHO *** IP is hardcoded ***) ELSE (ECHO DHCP is enabled) ECHO. ECHO Test Results: %TEST% ECHO. ECHO 1) IP RESET (Try this first) ECHO 2) INTERFACE RESET (REQUIRES REBOOT) IF %PROXY%==0x1 ECHO 3) Remove IE Proxy Setting IF %IEOFFLINE%==0x1 ECHO 4) Set IE to work online IF %DHCP%==STATIC ECHO 5) Enable DHCP ECHO T) Rerun Test IF EXIST C:\RESETLOG-NDT.TXT ECHO R) Reboot ECHO Q) Quit S***** ECHO. SET /P OPTION=Enter option: IF %OPTION%==1 GOTO RESET.1 IF %OPTION%==2 GOTO NIC IF %OPTION%==3 GOTO PROXY IF %OPTION%==4 GOTO FIXIEO IF %OPTION%==5 GOTO DYNRESET IF /I %OPTION%==T GOTO DETECT IF /I %OPTION%==R GOTO REBOOT IF /I %OPTION%==Q GOTO END ECHO Invalid entry. Please try again. GOTO OPTIONS :RESET IF %DHCP%==LOOPBACK GOTO LBOPTION :RESET.1 ECHO. ECHO Resetting IP ECHO Please be patient ECHO. ECHO Diagnostics will be reran ECHO. IPCONFIG /RELEASE >NUL ECHO 25%% Done :DNSRESET IPCONFIG /FLUSHDNS >NUL IF /I %DNSRESET%==Y GOTO DNSRESET.1 ECHO 50%% Done IPCONFIG /RENEW >NUL ECHO 75%% Done :DNSRESET.1 IPCONFIG /REGISTERDNS >NUL ECHO Rerunning test ECHO. GOTO IP :LBOPTION ECHO. ECHO Your IP Address is %IP% ECHO. ECHO Should we try to renew the IP? ECHO. SET /P LBRESET=Enter Y or N: IF /I %LBRESET%==N GOTO FAILURE IF /I %LBRESET%==Y GOTO RESET.1 ECHO Invalid entry. Please try again. GOTO LBOPTION :DNSFAIL IF %DNS%==STATIC GOTO DNSFAIL.1 :DNSFAIL.1A ECHO. ECHO Should we flush and reregister DNS? ECHO. SET /P DNSRESET=Enter Y or N: IF /I %DNSRESET%==N GOTO OPTIONS IF /I %DNSRESET%==Y GOTO DNSRESET ECHO Invalid entry. GOTO DNSFAIL :DNSFAIL.1 ECHO. ECHO DNS is hardcoded... ECHO. ECHO Set DNS to DHCP? ECHO. SET /P DNSDHCP=Enter Y or N: IF /I %DNSDHCP%==N GOTO DNSFAIL.1A IF /I %DNSDHCP%==Y GOTO DNSDHCP ECHO Invalid entry. GOTO DNSFAIL.1 :DYNAMIC ECHO. ECHO Your connection is not using DHCP ECHO. ECHO Would you like to configure your connection to use DHCP? ECHO. SET /P DYNIP=Enter Y or N: IF /I %DYNIP%==Y GOTO DYNRESET IF /I %DYNIP%==N GOTO FAILURE ECHO Invalid option try again GOTO DYNAMIC :DYNRESET :DNSDHCP IF %VER%==XP GOTO DHCPX NETSH INTERFACE SHOW INT |FIND "Connected" > %TEMP%\CONN.TXT FIND "2" %TEMP%\CONN.TXT >NUL IF %ERRORLEVEL%==0 GOTO SUFF FOR /F "TOKENS=4-7" %%A IN (%TEMP%\CONN.TXT) DO SET CONN=%%A %%B %%C SET CONN=^"%CONN%^" GOTO DYNRESET.1 :SUFF FOR /F "TOKENS=4-7" %%A IN (%TEMP%\CONN.TXT) DO SET CONN=%%A %%B %%C %%D SET CONN=^"%CONN%^" :DYNRESET.1 DEL %TEMP%\CONN.TXT :DYNRESET2 IF %DNSDHCP%==Y GOTO DNSDHCP.1 NETSH INT IP SET ADDRESS %CONN% DHCP >NUL :DNSDHCP.1 NETSH INT IP SET DNS %CONN% DHCP >NUL IF %DNSDHCP%==Y GOTO IP NETSH INT IP SHOW CONFIG > %TEMP%\DHCP.TXT FIND "Yes" %TEMP%\DHCP.TXT >NUL IF %ERRORLEVEL%==1 (SET DHCP=STATIC) ELSE (SET DHCP=ENABLED) DEL %TEMP%\DHCP.TXT IF %OPTION%==5 GOTO OPTIONS IF %REDIR%==YES GOTO IP GOTO %ROUTER% :DHCPX NETSH INT IP SHOW CONFIG |FIND "Configuration" > %TEMP%\CONN.TXT FIND "2" %TEMP%\CONN.TXT >NUL IF %ERRORLEVEL%==0 GOTO SUFF FOR /F "TOKENS=4-7" %%A IN (%TEMP%\CONN.TXT) DO SET CONN=%%A %%B %%C GOTO DYNRESET.1 :SUFF FOR /F "TOKENS=4-7" %%A IN (%TEMP%\CONN.TXT) DO SET CONN=%%A %%B %%C %%D GOTO DYNRESET.1 :NIC ECHO Resetting interface IPCONFIG /RELEASE >NUL IPCONFIG /FLUSHDNS >NUL NETSH WINSOCK RESET >NUL NETSH WINSOCK RESET CATALOG >NUL NETSH INT IP RESET > C:\RESETLOG-NDT.TXT ECHO. ECHO Reboot system now? SET /P REBOOT=Y/N: IF /I %REBOOT%==Y GOTO REBOOT IF /I %REBOOT%==N GOTO OPTIONS :IEOPTIONS inetcpl.cpl GOTO OPTIONS :PROXCHO ECHO *** IE Proxy is enabled *** ECHO. ECHO Would you like to remove proxy setting? SET /P REMPROX=Enter Y or N? ECHO. IF /I %REMPROX%==Y GOTO PROXY IF /I %REMPROX%==N GOTO SUCCESS.1A ECHO Invalid option. Please try again GOTO PROXCHO :PROXY ECHO Clearing IE proxy ECHO Windows Registry Editor Version 5.00 >> %TEMP%\REGPROXY.REG ECHO. >> %TEMP%\REGPROXY.REG ECHO [HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Internet Settings] >> %TEMP%\REGPROXY.REG ECHO "ProxyEnable"=dword:00000000 >> %TEMP%\REGPROXY.REG REGEDIT.EXE %TEMP%\REGPROXY.REG DEL %TEMP%\REGPROXY.REG FOR /F "TOKENS=3" %%A IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\In ternet Settings" /V ProxyEnable') DO SET PROXY=%%A IF %OPTION%==3 GOTO OPTIONS IF %IEOFFLINE%==0x1 GOTO IEOFFLINE IF %REMPROX%==Y GOTO SUCCESS.1A GOTO OPTIONS :IEOFFLINE ECHO. ECHO *** IE is set to offline mode *** ECHO. ECHO Restore online mode? SET /P OFFLINE=Enter Y or N: ECHO. IF /I %OFFLINE%==Y GOTO FIXIEO IF /I %OFFLINE%==N GOTO SUCCESS.1B ECHO Invalid option. Please try again GOTO IEOFFLINE :FIXIEO ECHO Setting IE to work online ECHO Windows Registry Editor Version 5.00 >> %TEMP%\REGOFFLINE.REG ECHO. >> %TEMP%\REGOFFLINE.REG ECHO [HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Internet Settings] >> %TEMP%\REGOFFLINE.REG ECHO "GlobalUserOffline"=dword:00000000 >> %TEMP%\REGOFFLINE.REG REGEDIT.EXE %TEMP%\REGOFFLINE.REG DEL %TEMP%\REGOFFLINE.REG FOR /F "TOKENS=3" %%A IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\In ternet Settings" /V GlobalUserOffline') DO SET IEOFFLINE=%%A IF %OFFLINE%==Y GOTO SUCCESS.1A GOTO OPTIONS :NONET ECHO. ECHO Error Detected! ECHO System is not connected to any network ECHO. ECHO Check cabling from router or modem before continuing ECHO. PAUSE CLS IPCONFIG |FIND "%IPVER%" >NUL IF %ERRORLEVEL%==0 GOTO DETECT EXIT :NONIC ECHO. ECHO Error Detected! ECHO System has no network devices ECHO. ECHO Please ensure your connections are enabled before continuing ECHO. NCPA.CPL PAUSE CLS IPCONFIG |FIND "adapter" >NUL IF %ERRORLEVEL%==0 GOTO DETECT EXIT :REBOOT ECHO Rebooting SHUTDOWN -R -T 0 EXIT :REDIRECT ECHO IP Address redirection has been detected!!! ECHO. ECHO The system has most likely been manipulated by malware!!! ECHO. ECHO Further infections can incur if this is not fixed. ECHO. SET REDIR=YES IF %DHCP%==STATIC (GOTO DYNAMIC) ELSE (ECHO Press any key to exit test) IF %DNS%==STATIC (GOTO DNSFAIL.1) ELSE (ECHO Press any key to exit test) PAUSE >NUL EXIT :ADMIN ECHO. ECHO. ECHO. ECHO **** This tool needs to be run as Administrator **** ECHO. ECHO The program will now close ECHO. ECHO Please right click on the file, and choose "Run as administrator" ECHO. ECHO. ECHO. ECHO. ECHO. ECHO Press any key when you are ready to proceed PAUSE >NUL EXIT :END EXIT |
Ich tippe mal drauf, dass die S*****s nicht unter Admin-Rechten laufen.
|
Hast du eine Englische Version von Windows oder Deutsche?
Bei mir klappt der erste teil des S*****s (inkl. Ping) nur wenn ich "Antwort von" statt "Reply from" schreibe. (Win 7 x64) |
Hab mit und ohne Adminrechten versucht hat aber nicht funktioniert.
Das mit dem "antwort von" habe ich auch schon versucht dabei hab ich das "antwort" mit großem A geschrieben. Das war der Fehler. Es muss klein geschrieben werden. Vielen Dank für die Hilfe |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:54 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.