1
我寫過一個腳本來刪除一旦exe文件執行後創建的批處理文件,它是用快速bfc編譯的,因爲它不通過它自己來完成,包含源代碼一旦進程是不存在的。問題是它刪除它自己並結束兩個進程,它的self和xxx.exe。我的目標是通過循環檢查每2秒是否存在過程。如果進程不再運行,它會刪除%temp%文件夾中啓用的任何可能文件的h屬性,然後刪除%temp%文件夾中的所有文件。如果是,它會再次檢查是否存在xxx.exe。批處理腳本無法正常工作
@echo off
start xxx.exe
:A
tasklist 2>nul | find "xxx.exe" 1>nul
if not ErrorLevel 1 (
echo Wscript.Sleep 2000> %temp%\sleep.vbs
start /w wscript.exe %temp%\sleep.vbs
del %temp%\sleep.vbs /f /q
goto A
) else (
Goto B
)
:B
attrib -h %temp%\*.*
del %temp%\*.* /f /q
exit
P.S 增加,因爲成功的第一次嘗試沒有任何工作轉到B部。 請記住,啓動xxx.exe時,它會使用在%temp%文件夾中創建的批處理文件,所以如果xxx.exe被終止,它仍然可以運行,因此只會保持cmd.exe處於活動狀態。 用於檢查進程是否存在的腳本顯然是不可見的。 啓動的批處理文件提供菜單例如1.執行xxx 2. sddd 。
謝謝你,會測試,但我寧願爲此批量解決方案。 – 5452 2012-02-23 12:29:33