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 "goto" kann syntaktisch an dieser Stelle nicht verarbeitet werden

Mitglied: Y4nn1ck

Y4nn1ck (Level 1) - Jetzt verbinden

03.06.2015, aktualisiert 16:16 Uhr, 2922 Aufrufe, 14 Kommentare

Morgen, ich schreibe gerade an einem Zufallsgenerator für die Klasse, also an einem, der auswählt, wer dran kommt. Ich schreibe es in batch. Es funktioniert auch alles, allerdings habe ich gerade die Funktion hinzugefügt, dass man auswählen kann, wer am derzeitigen Tag nicht da ist. Wenn man dann den Namen auswählt (also jeder hat seine eigene Taste), dann soll er zu dem Zufallsgenerator (alles im selben programm), bei dem derjenige nicht dabei ist. Zb. if %klick%==A goto Frank . Leider nennt er mir, wenn ich das Programm ausführe, den oben genannten "Fehler".
weiß jemand was da nicht stimmt? Wäre wirklich nett...
Mitglied: Biber
03.06.2015, aktualisiert um 14:12 Uhr
Moin Y4nn1ck,

bitte poste mal ein paar Zeilen mehr deines Skriptes (vorzugsweise in Codetags).

Das können mehrere Fehler in der Zeile if %klick%==A goto Frank untergebracht worden sein, zB

- %klick% ist undefined
- %klick% und A stehen beide nicht in Anführungszeichen; somit kann aus diversen Gründen/in diversen Situationen Syntaxfehler "geworfen werden".
- Der Schalter /i beim IF fehlt - Klein/Grossschreibung wird NICHT ignoriert
- Sprungmarke "Frank" existiert nicht
...

Grüße
Biber
Bitte warten ..
Mitglied: Penny.Cilin
03.06.2015 um 14:19 Uhr
Ohne Begrüssung.

Lass uns doch mal Deinen Batch sehen, oder ist dieser Batch geheim?
Ist das Sprungziel denn korrekt definiert?
Bitte warten ..
Mitglied: Y4nn1ck
03.06.2015 um 14:24 Uhr
%klick% ist definiert
Keins der beiden variablen ist in Anführungszeichen
/i ist vorhanden
Sprungmarke existiert
Bitte warten ..
Mitglied: Y4nn1ck
03.06.2015 um 14:25 Uhr
Wie kann ich den komplett hierein stellen?
Bitte warten ..
Mitglied: Penny.Cilin
03.06.2015 um 15:04 Uhr
So einfach, wie Du einen Beitrag erstellst. Copy und paste des Quelltextes.

Und danach bitte unbedingt Codetags benutzen, damit man das ganze auch vernünftig lesen kann.
Bitte warten ..
Mitglied: Y4nn1ck
03.06.2015, aktualisiert um 16:04 Uhr
01.
@echo off
02.
title Zufallsgenerator 9d                              Version 2.0.1
03.
color 3F
04.

05.
echo Lasst uns das Rad drehen, doch vorher erstmal den Kranken auswaehlen
06.
echo.
07.
echo.
08.
echo A fuer Frank    B fuer Sophie    C fuer Mareike    D fuer Tillmann    
09.
echo E fuer Markus   F fuer Luise     G fuer Sophia     H fuer Dora       
10.
echo I fuer Ferdi    J fuer Anton     K fuer Mathilda   L fuer Julia     
11.
echo M fuer Anna     N fuer Harry     O fuer Jakob      P fuer Jan      
12.
echo Q fuer Julius   R fuer Yannick   S fuer Mizgin     T fuer Emily    
13.
echo U fuer Niemand
14.
echo.
15.
echo Unser Pechvogel fuer heute ist
16.

17.
:zuhause
18.

19.
pause>Nul
20.

21.
set /a %klick%
22.
if /i %klick%==A goto afrank
23.
if /i %klick%==B goto bsophie
24.
if /i %klick%==C goto cmareike
25.
if /i %klick%==D goto dtillmann
26.
if /i %klick%==E goto emarkus
27.
if /i %klick%==F goto fluise
28.
if /i %klick%==G goto gsophia
29.
if /i %klick%==H goto hdora
30.
if /i %klick%==I goto iferdi
31.
if /i %klick%==J goto janton
32.
if /i %klick%==K goto kmathilda
33.
if /i %klick%==L goto ljulia
34.
if /i %klick%==M goto manna
35.
if /i %klick%==N goto nharry
36.
if /i %klick%==O goto ojakob
37.
if /i %klick%==P goto pjan
38.
if /i %klick%==Q goto qjulius
39.
if /i %klick%==R goto ryannick
40.
if /i %klick%==S goto smizgin
41.
if /i %klick%==T goto temily
42.
if /i %klick%==U goto ualle
43.

44.

45.

46.
:afrank
47.
pause>Nul
weiter habe ich keine Probeme
und codetag läuft meines wissens nach noch nicht mit batch

[Edit Biber] Okay, okay.... jetzt hab ich die albernen Codetags gesetzt.
Und zu diesem Satz...
weiter habe ich keine Probeme
....möchte ich jetzt nix schreiben.[/Edit]
Bitte warten ..
Mitglied: Penny.Cilin
LÖSUNG 03.06.2015, aktualisiert um 16:17 Uhr
Du sollst ja auch in Deinem Beitrag hier die Codetags nutzen und nicht im Batch.
Bitte warten ..
Mitglied: SarekHL
LÖSUNG 03.06.2015, aktualisiert um 16:16 Uhr
Also, so geht es:

01.
echo off
02.
title Zufallsgenerator 9d Version 2.0.1
03.
color 3F
04.

05.
echo Lasst uns das Rad drehen, doch vorher erstmal den Kranken auswaehlen
06.
echo.
07.
echo.
08.
echo A fuer Frank B fuer Sophie C fuer Mareike D fuer Tillmann
09.
echo E fuer Markus F fuer Luise G fuer Sophia H fuer Dora
10.
echo I fuer Ferdi J fuer Anton K fuer Mathilda L fuer Julia
11.
echo M fuer Anna N fuer Harry O fuer Jakob P fuer Jan
12.
echo Q fuer Julius R fuer Yannick S fuer Mizgin T fuer Emily
13.
echo U fuer Niemand
14.
echo.
15.
set /p klick = Unser Pechvogel für heute ist 
16.

17.

18.
:zuhause
19.

20.

21.
if /i "%klick%"=="A" goto afrank
22.
...
23.

24.

25.
:afrank
26.
pause>Nul

Was ich verändert habe:

- Zuweisung der Eingabe zur Variable (Zeile 15)
- Anführungszeichen in der If-Abfrage gesetzt (am Beispiel von Zeile 21)
Bitte warten ..
Mitglied: Biber
LÖSUNG 03.06.2015, aktualisiert um 16:16 Uhr
[OT]
Moin SarekHL,

Musst du nicht diese Zeile auch ändern?
Zufallsgenerator 9d Version 2.0.1

Eigentlich sollte doch der Versionszähler wenigstens auf Zufallsgenerator 9d Version 2.0.1a.

Grüße
Biber
[/OT]
Bitte warten ..
Mitglied: SarekHL
LÖSUNG 03.06.2015, aktualisiert um 16:17 Uhr
Zitat von Biber:

Eigentlich sollte doch der Versionszähler wenigstens auf Zufallsgenerator 9d Version 2.0.1a.




Übrigens, so viel wie wir hier in letzter Zeit mit Batch zu tun haben (mehr als mit VBS oder so), wäre es wirklich mal praktisch, eine Syntaxhervorhebung für Batch in den Codetags zu haben ...
Bitte warten ..
Mitglied: SarekHL
LÖSUNG 04.06.2015, aktualisiert um 13:30 Uhr
Zitat von Y4nn1ck:

Wenn man dann den Namen auswählt (also jeder hat seine eigene Taste), dann soll er zu dem Zufallsgenerator (alles im selben programm), bei dem derjenige nicht dabei ist.

Wo ich mir das gerade noch mal durchlese finde ich den Weg etwas schräg, um das Ziel zu erreichen. Du arbeitest dann mit zwanzig Zufallsgenerator-Codes, bei denen das meiste redundant ist. Wäre es nicht eleganter das Programm so aufzuziehen:

  1. Eingabe (oder Auswahl) des eigenen Namens
  2. Zufallsgenerator starten und Ergebnis in Variable schreiben
  3. Prüfen, ob das Ergebnis des Zufallsgenerator zufällig der eigene Name ist, wenn ja, zurück zu Schritt 2
  4. Ausgabe des Ergebnisses
Bitte warten ..
Mitglied: Y4nn1ck
04.06.2015 um 13:31 Uhr
Ist eleganter, hast recht...
auch eine idee wie man das dann mit mehreren kranken personen schreiben kann?
Bitte warten ..
Mitglied: SarekHL
04.06.2015 um 13:39 Uhr
Zitat von Y4nn1ck:

auch eine idee wie man das dann mit mehreren kranken personen schreiben kann?

Sorry, dafür reichen dann meine Batch-Kenntnisse nicht aus. Ich programmiere normalerweise in VB6, dort würde ich das mit einer Array-Variable lösen, die dann ebenfalls mit dem Ergebnis des Zufallsgenerators verglichen würde. Ob sowas in VB geht, weiss ich nicht. Da kann Biber Dir sicher weiterhelfen
Bitte warten ..
Mitglied: Y4nn1ck
04.06.2015 um 18:25 Uhr
Habs jetzt so gelöst, sodass er nach dem auslosen aber vor der bekanntgabe die zahl mit den bis zu drei kranken abgleicht, also auch mit variablen die man direkt am anfang eingibt, zb a enter f enter o enter dann kommt keiner von den dreien dran
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch "goto kann syntaktisch an dieser Stelle nicht verarbeitet werden"

Frage von admadmBatch & Shell1 Kommentar

Ich habe hier eine Batch die aus einem Programm heraus aufgerufen wird, leider funktioniert diese nicht. Ich erhalte den ...

Batch & Shell

":" Kann an dieser Stelle syntaktisch nicht verarbeitet werden

gelöst Frage von IleiesBatch & Shell9 Kommentare

Hallo zusammen, Hier erstmal mein Programm: Ich bekomme jedes Mal folgende Fehlermeldung: Kann sich jemand vorstellen warum? Ich komme ...

Batch & Shell

"C.E.O." kann syntaktisch an dieser Stelle nicht verarbeitet werden

gelöst Frage von HeacienBatch & Shell2 Kommentare

Ich bin gerade dabi die Smartphone App 'Don't get fired!' in Batch als abgewandte Version nachzuschreiben. Da die Formatierung ...

Windows Server

Loginscript wird nicht verarbeitet

Frage von franksigWindows Server17 Kommentare

Hallo zusammen, Ich hab mal wieder ein leidiges Loginscriptproblem, Ausgangslage: es git eine GPO Namens "Loginskript-Produktion" ich habe dort ...

Neue Wissensbeiträge
Firewall
PfSense 2.5.0 benötigt doch kein AES-NI
Tipp von ChriBo vor 9 StundenFirewall

Hallo, Wie sich einige hier erinnern werden hat Jim Thompson in diesem Aritkel beschrieben, daß ab Version 2.5.0 ein ...

Internet
Copyright-Reform: Upload-Filter
Information von Frank vor 1 TagInternet

Hallo, viele Menschen reden aktuell von Upload-Filtern. Sie reden darüber, als wären es eine Selbstverständlichkeit, das Upload-Filter den Seitenbetreibern ...

Google Android

Blokada: Tracking und Werbung unter Android unterbinden

Information von AnkhMorpork vor 1 TagGoogle Android1 Kommentar

In Ergänzung zu meinem vorherigen Beitrag: Blokada efficiently blocks ads, tracking and malware. It saves your data plan, makes ...

Google Android
Facebooks unsichtbare Datensammlung
Information von AnkhMorpork vor 1 TagGoogle Android2 Kommentare

Rund 30 Prozent aller Apps im Play-Store nehmen Kontakt zu Facebook auf, sobald man sie startet. So erfährt der ...

Heiß diskutierte Inhalte
Linux Userverwaltung
LogIn Versuche beschränken auf EINEN Versuch
gelöst Frage von GarroshLinux Userverwaltung21 Kommentare

Folgendes Problem Ich habe einen dezidierten Server beim Hoster gemietet, installiert ist Ubuntu 18.04.2 LTS‬ und als Webinterface Plesk. ...

DSL, VDSL
Neuer Glasfaser Anschluss - IPv4-Adressraum
Frage von norre2000DSL, VDSL12 Kommentare

Hallo Zusammen, ich werde meinen Glasfaser Anschluss wechseln und bin beim Ausfüllen des Antrags auf Fragen gestoßen bei denen ...

Internet
Aktuell HP-Support-Seite kaputt?
gelöst Frage von LochkartenstanzerInternet12 Kommentare

Hallo Kollegen, Weiß einer von euch, seit wann die HP-Support-Seite kaputt ist? ) Wollte heute morgen Druckertreiber runterladen und ...

Ubuntu
Exchange Alternative auf Ubuntu
Frage von TELLOUbuntu11 Kommentare

Hi NG, wir müssen für unsere Kleine Firma (5 User) das Email / Kalendersystem neu einrichten. Ich könnte jetzt ...