Nie wiem dlaczego, ale gdy uruchamiam plik z palca, to wszysto działa ok., natomiast jak jest uruchamiany z automatu, to coś się sypie :(
Pokrótce program działa w następujący sposób, przy pierwszym uruchomieniu dodaje do autostartu swoją instancję, po czym ma się uruchomić określoną ilość razy (w tym przypadku pięć razy). Na razie nie chciało mi się za bardzo kombinować, więc licznik jest prymitywny i są to tworzone pliki o kolejnych numerach. Na końcu skryptu mamy wymuszenie resetu, a w dwóch ostatnich linijkach jest zakomentowane usunięcie wpisu z autostartu, oraz usunięcie stworzonych plików.
I teraz o działaniu programu, o ile uruchamiając go z palca wszystko ładnie działa - przechodzi kolejno przez poszczególne pozycje aż do ostatniej, to gdy został dodany do autostartu, to po restarcie komputera, mimo, że nie ma plików sterujących (01.inst 02.inst 03.inst itd.) on je pamięta.
Testowałem na wirtualnej maszynie z win xp sp3, więc może tu tkwi problem, jutro jeszcze spróbuję na normalnym kompie, a gdyby ktoś się bardzo nudził i chciał pomóc, to na partycji d trzeba utworzyć katalog install, zapisać w nim skrypt jako install.bat i utworzyć jeszcze jeden pliczek (może być pusty) o nazwie plik.txt
@echo off
echo "Proszę czekać trwa inicjowanie..."
ping 127.0.0.1 -n 5 -w 1000 > nul
IF EXIST 01.upd GOTO 02
rem dodanie skryptu do autorun'a
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v "install" /t REG_SZ /d "D:\test\install.bat" /f
type plik.txt > 01.inst
echo "Instalowanie 1..."
GOTO END
:02
IF EXIST 02.upd GOTO 03
type plik.txt > 02.inst
echo "Instalowanie 2..."
pause
GOTO END
:03
IF EXIST 03.upd GOTO 04
type plik.txt > 03.inst
echo "Instalowanie 3..."
pause
GOTO END
:04
IF EXIST 04.upd GOTO 05
type plik.txt > 04.inst
echo "Instalowanie 4..."
pause
GOTO END
:05
rem reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v "install" /f
rem del *.inst
echo Koniec
pause
:END
shutdown -r -t 5