Hulp gevraagt met batch script

Status
Niet open voor verdere reacties.

DarkCyber

Nieuwe gebruiker
Lid geworden
6 aug 2007
Berichten
3
Ik heb een batch script geschreven om mijn usb stick uittewerpen.
Omdat ik vaak van pc wissel veranderd de drive letter van mijn stick en moet ik bij elke pc de drive letter veranderen en bij sommige pc is de drive letter bezet.

Ik heb al een script gemaakt maar ik krijg het niet voor mekaar om de drive letter in het hoofd script te krijgen.

:: begin script
:
@echo off
cd\
echo.
echo Your current drive letter is: %cd%
echo.
pause
:
:: einde script

En met dit script loop ik vast

:: begin script
:
@echo off
cd\
echo %cd% >drive.txt
:
:: einde script

Nou zou je het text filetje moeten uit lezen van uit het hoofd script maar hoe :(

Dat zal iets moeten worden als

:: begin script
:
@echo off
set drive=type drive.txt
echo %drive%
start %drive%temp\apps\prog.exe
:
:: einde script

Dan krijgje als uitkomst "type drive.txttemp\apps\prog.exe" :(
 
Laatst bewerkt:
Probleem opgelost

Probleem opgelost, en dit is het geworden :D

Tested on windows xp

Needed tools:

sync.exe
wait.exe

http://www.microsoft.com/technet/sysinternals/FileAndDisk/PsTools.mspx
http://www.ppedv.de/dwnld/wait.zip

First Batch file "Launch.bat":

title Eject Drive
if not exist "NoCleanup.txt" echo Got to protect yourself from yourself >"Nocleanup.txt"

rem Take out the trash you forgot, shame on you
if exist "%USERPROFILE%\Local Settings\Temp\Eject Drive.bat" del "%USERPROFILE%\Local Settings\Temp\Eject Drive.bat"
if exist "%USERPROFILE%\Local Settings\Temp\wait.exe" del "%USERPROFILE%\Local Settings\Temp\wait.exe"
if exist "%USERPROFILE%\Local Settings\Temp\sync.exe" del "%USERPROFILE%\Local Settings\Temp\sync.exe"
if exist "%USERPROFILE%\Local Settings\Temp\cleanup.bat" del "%USERPROFILE%\Local Settings\Temp\cleanup.bat"

copy "Eject Drive.bat" "%USERPROFILE%\Local Settings\Temp\" >"%USERPROFILE%\Local Settings\Temp\0"
copy sync.exe "%USERPROFILE%\Local Settings\Temp\" >"%USERPROFILE%\Local Settings\Temp\0"
copy wait.exe "%USERPROFILE%\Local Settings\Temp\" >"%USERPROFILE%\Local Settings\Temp\0"

rem Get concurrent drive
cd\
set drive=%cd%

cd /d "%USERPROFILE%\Local Settings\Temp\"
"Eject Drive.bat"
rem End off batch file

Sec Batch File "Eject Drive.bat":

@echo off
title Eject Drive
echo Ejecting Drive.........Wait

rem The Cleanup Guy
echo @echo off >>cleanup.bat
echo if exist "nocleanup.txt" exit >>cleanup.bat
echo del "Eject Drive.bat" >>cleanup.bat
echo del sync.exe >>cleanup.bat
echo del wait.exe >>cleanup.bat
echo del 0 >>cleanup.bat
echo del cleanup.bat >>cleanup.bat

rem If no app is hooking the drive it shoot pop out
sync.exe -e -r %drive%
set drive=
wait 1
cleanup.bat
rem End off batch file
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan