geeft een fout met :end (batch bestand)

Status
Niet open voor verdere reacties.

rino26

Gebruiker
Lid geworden
21 mrt 2011
Berichten
253
hallo lezers
als ik iets gemaakt.
ik heb een timer van 30sec en daarna opent hij het bestand dat hij naar andere gebruiker (Lock) gaat. maar als hij naar andere gebrijker is gegaan krijg ik een melding dat "de opgegeven batchlabel kan niet gevonden worden: end". wat is het probleem??
dit is de tekst wat ik heb getype:

@echo off
color E9

Echo (tekst)

IF "%30"=="" GOTO Syntax
ECHO.
ECHO Waiting %1 seconds
Echo.
TIMEOUT /T 30 /NOBREAK
IF ERRORLEVEL 255 ECHO Invalid parameter
IF ERRORLEVEL 255 GOTO Syntax
GOTO End

:Syntax
ECHO.
ECHO WAIT for a specified number of seconds
ECHO.
ECHO Usage: WAIT n
ECHO.
ECHO Where: n = the number of seconds to wait (1 to 99)
ECHO.
:end

start "" "andere gebruiker (Lock).bat"

:end
 
a. Opmerking: Je gebruikt het label :end 2x in je huidige batch-file
b. Er zal in "andere gebruiker (Lock).bat" ergens gesprongen worden naar een label :end (Goto end), maar het label :end is in die batchfile niet aanwezig/geprogrammeerd.

Tijs.
 
maar als ik de ":end" tussen de 30sec wait en het openen van het bestand verander in "goto end" dan opent hij het bestand niet. en als ik de laatste ":end" weg haal geeft hij de zelfe melding
 
Nogmaals: Het probleem zit in het batch-bestand dat je aanroept vanuit je originele batch-bestand! Oftewel: Het probleem zit in "andere gebruiker (Lock).bat", want dáár wordt blijkbaar een GOTO end gebruikt, maar is er geen label :end aanwezig. Dat had ik geschreven in b. van mijn vorige posting...
Dus als je "andere gebruiker (Lock).bat" eens nader bekijkt (in Kladblok, bijv.), dan geef ik het een grote kans dat het klopt wat ik al aangaf.

Tijs.
 
maar waar moet ik dan de goto end plaatsen??
of wat moet ik veranderen??
 
Wij weten toch niet wat in "andere gebruiker (Lock).bat" staat? Want dáár ligt het probleem...
Laat die eens zien, dan?

Tijs.
 
ja ik heb dat al op gelost maar ik krijg nog wel een neuwe window met cmd en met de locatie van waar hij het heeft geopent.
hoe haal ik dat weg? ik heb goto end in end veranderd

tekst van andere gebruiker:
@ECHO OFF
START rundll32.exe user32.dll, LockWorkStation
cls
:end
 
Het start-commando zorgt voor dat extra CMD-venster, vandaar dat je
start "" "andere gebruiker (Lock).bat"
moet vervangen door:
"andere gebruiker (Lock).bat"

Tijs.
 
Als je wilt dat naar het originele batch-bestand wordt teruggekeerd zodra/nadat "andere gebruiker (Lock).bat" is uitgevoerd, dan gebruik je:
call "andere gebruiker (Lock).bat"
Zie voor uitleg: link
Ik vermeld dit omdat je met je Start-manier van eerder ook de originele batch-file laat doorlopen, dus misschien is bovenstaande relevant voor je.

Verder graag gedaan m.b.t. de gegeven hulp. :)

Tijs.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan