4/03/2010

批次檔延遲執行啟動項目 / Command Line Startup Delayer

由於是公司很乾淨的電腦有這個需求,不適合裝一些額外的軟體,所以想出這個方法。不過在不乾淨的作業系統下,最前面有必要增加一些 Code 來延遲執行整個批次檔。如果有更多程式或較少程式要執行,稍微修改就可以了。
If you don't want to install any software, it might a way of delay startup programs.

@echo off
set /A num = 0
set path=C:\startup
REM 要啟動的程式捷徑位置 ( .lnk of startup items )
goto run

: starting
set /A StartT = %time:~6,1%*10 + %time:~7,1%
REM 避免 0X 秒造成錯誤 ( avoid error of convert 0x to numbers )
IF %StartT% == %StartE% goto run
goto starting


: run
set /A StartT = %time:~6,1%*10 + %time:~7,1%
IF %num% == 8 goto endloop
IF %StartT% == 7 goto p1
IF %StartT% == 14 goto p2
IF %StartT% == 21 goto p3
IF %StartT% == 28 goto p4
IF %StartT% == 35 goto p5
IF %StartT% == 42 goto p6
IF %StartT% == 49 goto p7
IF %StartT% == 56 goto p8
goto run

: p1
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P1 中,已啟動 %num% / 8
P1.lnk
goto starting

: p2
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P2 中,已啟動 %num% / 8
P2.lnk
goto starting

: p3
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P3 中,已啟動 %num% / 8
P3.lnk
goto starting

: p4
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P4 2 中,已啟動 %num% / 8
P4.lnk
goto starting

: p5
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P5 中,已啟動 %num% / 8
P5.lnk
goto starting

: p6
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P6 中,已啟動 %num% / 8
P6.lnk
goto starting

: p7
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P7 中,已啟動 %num% / 8
P7.lnk
goto starting

: p8
set /A num = %num%+1
set /A StartE = %StartT%+1
echo 啟動 P8 中,已啟動 %num% / 8
P8.lnk
goto starting

: endloop
pause

More......