Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Batch-Datei stürzt ab

Mitglied: stefreak

stefreak (Level 1) - Jetzt verbinden

06.02.2007, aktualisiert 20:19 Uhr, 8192 Aufrufe, 6 Kommentare

Nach einer Usereingabe stürzt die Batch-Datei einfach ab. Ich benutze Windows XP

Hallo, ich hoffe ihr könnt mir helfen.

Ich programmiere gerade eine Batch-Datei für einen Freund - Das ist eigentlich meine erste Batch Datei. Die Datei soll die hosts datei ändern, damit man LineAge auf einem der inoffiziellen Server spielen kann. Das Script soll alles vereinfachen. Bei der Nachfrage, ob die hosts Datei wiederhergestellt werden soll und bei der Antwort "y" stürzt mein Script einfach ab.
Ich würde mich über eine Lösung sehr freuen.

Hier das Script:
01.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
02.
::              IP Helper fuer LineAge II                  :: 
03.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
04.
:: Copyright (C) 2007 Steffen Neubauer  computer-brain.net :: 
05.
::               Lizenz: GNU GPL v2 only                   :: 
06.
:: Achtung! Der Autor dieses Scripts haftet in keinem Fall :: 
07.
:: fuer Schaeden an Hadware oder Software an diesem        :: 
08.
:: Computer ausgeloest durch die Benutzung dieses Scripts! :: 
09.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  
10.
@echo off 
11.
echo BEGINN LOG > log.txt 
12.
echo Achtung! Der Autor dieses Scripts haftet in keinem Fall fuer Schaeden an Hadware oder Software an diesem Computer ausgeloest durch die Benutzung dieses Scripts! 
13.
Pause 
14.
IF not exist "%windir%\system32\drivers\etc\hosts" goto FEHLER 
15.
echo Alles Klar! Ich beginne. 
16.
Pause 
17.
echo hosts-datei exisitiert >> log.txt 
18.
copy "%windir%\system32\drivers\etc\hosts" "%windir%\system32\drivers\etc\hosts_sicherung" >> log.txt 
19.
SET /P IP=IP-Adresse eingeben ...  
20.
echo   >> %windir%\system32\drivers\etc\hosts 
21.
echo %IP%    l2authd.lineage2.com >> %windir%\system32\drivers\etc\hosts 
22.
echo Die IP wurde in die hosts-datei geschrieben >> log.txt 
23.
echo !DAS PROGRAMM DARF KEINESFALLS GESCHLOSSEN WERDEN! 
24.
echo Ich starte nun LineAge II. 
25.
IF not exist "C:\Programme\Lineage II\system\L2.exe" goto HAND 
26.
CALL "C:\Programme\Lineage II\system\L2.exe" 
27.
echo LineAge II gestartet. >> log.txt 
28.
Pause 
29.
goto DANACH 
30.
 
31.
 
32.
:HAND 
33.
    echo Bitte starte LineAge2 nun von Hand. Duecke erst eine beliebige Taste, wenn du fertig bist mit spielen. Beende dieses Script auf keinen Fall selbstständig! 
34.
    echo LineAge II von Hand gestartet. >> log.txt 
35.
    Pause 
36.
 
37.
 
38.
:DANACH 
39.
    echo Nun solltest du LineAge II gespielt haben. 
40.
    Pause 
41.
 
42.
:DANACHDANACH 
43.
    SET /P LOESCHEN=Moechtest du, dass die hosts-datei wiederhergestellt wird? (y/n) ...  
44.
    IF %LOESCHEN% = "y" GOTO DANACH-Y 
45.
    IF %LOESCHEN% = "n" GOTO DANACH-N 
46.
    echo Bitte gib entweder y (Ja) oder n (Nein) an. 
47.
    Pause 
48.
    goto DANACHDANACH 
49.
 
50.
 
51.
:DANACH-Y 
52.
    echo ich stelle die hosts-Datei nun wieder her. 
53.
    IF not exist %windir%\system32\drivers\etc\hosts_sicherung goto FEHLERFEHLER 
54.
    DEL %windir%\system32\drivers\etc\hosts 
55.
    COPY %windir%\system32\drivers\etc\hosts_sicherung %windir%\system32\drivers\etc\hosts 
56.
    DEL %windir%\system32\drivers\etc\hosts_sicherung 
57.
    echo Wiederherstellung war erfolgreich. 
58.
    Pause 
59.
    goto ENDE 
60.
     
61.
 
62.
:DANACH-N 
63.
    goto ENDE 
64.
 
65.
 
66.
:FEHLER 
67.
    echo Die hosts-Datei konnte nicht gefunden werden. 
68.
    echo Die hosts-Datei konnte nicht gefunden werden. >> log.txt 
69.
    goto ENDE 
70.
 
71.
:FEHLERFEHLER 
72.
    echo Fehler. Ich kann die Datei nicht wiederherstellen. 
73.
    echo Wiederherstellen der hosts-Datei fehlgeschlagen. >> log.txt 
74.
    Pause 
75.
    goto ENDE 
76.
 
77.
:ENDE 
78.
    echo ENDE LOG >> log.txt 
79.
    echo Danke, dass du mich verwendet hast. Copyright (C) 2007 Steffen Neubauer - www.computer-brain.net - GNU GPL v2 only 
80.
    Pause
Danke!

MfG
Stefreak
Mitglied: 16409
06.02.2007 um 16:30 Uhr
du logst doch alles schön mit, was steht denn dadrin, nachem dein Batch abgestürzt ist. Die letzte Zeile müsste die ja noch den letzten erfolgreichen Schritt preisgeben und dann kann man näher suchen.

Wenn du "n" eingibst, läuft es dann durch
Bitte warten ..
Mitglied: Biber
06.02.2007 um 16:51 Uhr
Moin stefreak,

willkommen im Forum.
Für eine "erste" Batchdatei sehr ordentlich... *anmerk
(Rein handwerklich - soll kein moralischer Freifahrtschein für oder gegen LineAge sein).

Hier ist der eine oder andere Bug:
JETZT:
01.
     IF %LOESCHEN% = "y" GOTO DANACH-Y 
02.
     IF %LOESCHEN% = "n" GOTO DANACH-N
Besser:
01.
 :: der Schalter /i ist unwesentlich... nur für Ignoriere KleinGrossSchreibung 
02.
    IF /i "%LOESCHEN%" == "y" GOTO DANACH-Y 
03.
    IF /i "%LOESCHEN%" == "n" GOTO DANACH-N
Wesentlich sind die Delimiter (in Deinem Fall Anführungszeichen, die auf beiden Seiten des doppelten Vergleichs-Gleichheitszeichens da sein sollten.

IF /i [%LOESCHEN%] == [y] GOTO.... --> ginge genauso.

Gruss
Biber

P.S. "Hadware" ...sprecht ihr aber erstaunlich weich aus in Eurem Club...
Bitte warten ..
Mitglied: miniversum
06.02.2007 um 17:30 Uhr
Was heißt den das die Batch "abstürzt"? Hast du sie den schonmal vom cmd aus ausgeführt? vielleicht siehst du dan mehr.
Du kannst ja zum Debugen mal das @echo off weglassen das du siehst was passiert. Oder altenativ immerwieder infos in eine Zweite log schreiben wo es gerade steht. Theoretisch reichen hier Zahlenwerte und es reicht ja wenn dus auf den Bereich einschränkst indem der Fehler auftrit. Da kansn tdu dann sogar Zeilenweise immer mitloggen wo es gerade steht und auch bei jedem Befehl eventuelle Fehlermeldungen beim löschen oder koppieren mit 2>> mitprotokollieren. Das funktionier grundsätzlich bei allen Batches zum Fehler suchen gut.

miniversum
Bitte warten ..
Mitglied: stefreak
06.02.2007 um 19:37 Uhr
Für eine "erste" Batchdatei
sehr ordentlich... *anmerk
Danke, habe aber auch etwas Erfahrung in anderen Sprachen wie Basic, Python, PHP und lerne grade Java, C, C++ .... Batch war da ein Klacks
(Rein handwerklich - soll kein moralischer
Freifahrtschein für oder gegen LineAge
sein).
Ich verstehe zwar nicht was du damit meinst, aber das ist ja auch unwichtig...

Hier ist der eine oder andere Bug:
JETZT:
01.
     IF %LOESCHEN% = 
02.
> "y" GOTO DANACH-Y 
03.
>      IF %LOESCHEN% = "n" GOTO 
04.
> DANACH-N 
05.
> 
Besser:
01.
 :: der Schalter /i ist 
02.
> unwesentlich... nur für Ignoriere 
03.
> KleinGrossSchreibung 
04.
>     IF /i "%LOESCHEN%" == 
05.
> "y" GOTO DANACH-Y 
06.
>     IF /i "%LOESCHEN%" == 
07.
> "n" GOTO DANACH-N 
08.
> 

Das hat geholfen DANKE!!!

Wesentlich sind die Delimiter (in Deinem
Fall Anführungszeichen, die auf beiden
Seiten des doppelten
Vergleichs-Gleichheitszeichens da sein
sollten.

IF /i [%LOESCHEN%] == [y] GOTO....
--> ginge genauso.

Gruss
Biber

SUPER! Danke!

MfG
Stefreak


P.S. "Hadware" ...sprecht ihr aber
erstaunlich weich aus in Eurem Club...



Das verstehe ich wieder nicht ;)
Bitte warten ..
Mitglied: Biber
06.02.2007 um 20:02 Uhr
Das verstehe ich wieder nicht ;)
Na ja,

ich kann es einfach weiter hier stehen lassen zum gelegentlichen Knobeln... eilt ja nicht.

Da ich denke, dass das eigentliche Syntax-Problem erkannt und erledigt ist, können wir den Beitrag schließen (Also Du auf "Gelöst", ich auf "Geschlossen" setzen)?

Schönen Abend
Biber
Bitte warten ..
Mitglied: stefreak
06.02.2007 um 20:19 Uhr
Wer Interesse hat: Da ist das release

http://www.computer-brain.net/LineAgeII%20IP%20Helper.zip


MfG
Stefreak
Bitte warten ..
Ähnliche Inhalte
Windows 10

Mit einer batch Datei etwas in eine andere batch Datei schreiben und ausführen

Frage von RaphaelStockWindows 105 Kommentare

Hey Administratoren!! Ich habe ein Problem: Ich möchte alle 40 sek etwas in eine batch Datei schreiben und ausführen ...

Windows 7

Adobe Reader stürzt bei bestimmter Datei ab

Frage von killtecWindows 76 Kommentare

Hallo, auf einem unserer PC's haben wir das Problem, dass der Adobe Reader sofort nach dem Doppelklicken auf eine ...

Batch & Shell

Batch Datei zum verschieben von Dateien aus Unterordnern ?

gelöst Frage von Ghostrider1911Batch & Shell10 Kommentare

Hallo, ich bräuchte eine Batch Datei die Dateien aus Unterordnern verschiebt. Also ich habe folgende Verzeichniss Struktur: Z:\Dateien\Ordner1\M1\ Z:\Dateien\Ordnärx\M1\ ...

Batch & Shell

BATCH ini Datei Datei auslesen

gelöst Frage von Juergen42Batch & Shell2 Kommentare

Hallo zusammen, ich möchte eine ini Datei auslesen mit folgenden Aufbau INHALT DER INI ID=30 NAME="test1" PFAD="K:\Kontoauszug\Test1\*.pdf" PFAD_S="K:\Kontoauszug\Test1\Sicherung\" ID=28 ...

Neue Wissensbeiträge
Internet

Europa baut Zensurinfrastruktur auf: EU-Parlament stimmt für Upload-Filter, Leistungsschutzrecht und gegen KI-Forschung

Information von Frank vor 1 TagInternet9 Kommentare

Eine sehr schlechte Entscheidungen für die Zukunft Europas ist gefallen: Der Rechtsausschuss im EU-Parlament stimmte heute morgen in einer ...

Windows 10

Mikrofon von Headset geht nach Update auf Windows 10 1803 nicht mehr

Tipp von Deepsys vor 3 TagenWindows 102 Kommentare

Ich verwende ein Plantronics Headset das per USB mit dem Windows 10 PC verbunden ist. Damit kann ich auch ...

Video & Streaming

Ruckelfreies Fernsehen auf Smartphone oder Tablet - in SD oder gar HD - Eine Alternative zum Fritz DVB-C Receiver

Anleitung von power-user vor 4 TagenVideo & Streaming9 Kommentare

Wer kennt das nicht: Man möchte gemütlich auf dem Balkon sitzen und vielleicht grillen und dabei das WM-Spiel gucken ...

Erkennung und -Abwehr
Trendmicro WFBS 10 ist in deutsch verfügbar!
Tipp von VGem-e vor 4 TagenErkennung und -Abwehr4 Kommentare

Servus Kollegen, downloadbar unter

Heiß diskutierte Inhalte
Windows 7
Windows 7 Benutzer wechsel nicht möglich
gelöst Frage von OSelbeckWindows 727 Kommentare

Hallo, ich habe hier einen Windows 7 Rechner, der in der Domäne war. Jetzt passiert beim starten, das ich ...

Windows Netzwerk
IP-Adresskonflikt
Frage von Turbo-MasterWindows Netzwerk24 Kommentare

Hallo zusammen, ich habe ein Problem mit unserem Netzwerk unter Windows Server. Ständig erhalten wir die Meldung, dass ein ...

Batch & Shell
Batch Datei für Dateinamen
gelöst Frage von Sabi75Batch & Shell19 Kommentare

Hallo zusammen, ich bräuchte mal eure Hilfe. Ich nutze einen Windows 7 PC und ein Apple Ipad wenn ich ...

Festplatten, SSD, Raid
RAID auflösen Synology DS213j!
gelöst Frage von Hendrik2586Festplatten, SSD, Raid19 Kommentare

Guten Morgen meine Lieben! :) Diese Frage wird sich sicherlich schon der ein oder andere gestellt haben. Es geht ...