2011-06-09 32 views
1

我在這裏有一個啓動批處理腳本的vbs文件。批處理應該運行看不見的,所以我用這個VBS腳本:Windows腳本主機在啓動時找不到該文件

WScript.CreateObject("WScript.Shell").Run "loop.bat",0,0 

的VBS被註冊到運行鍵在啓動時向登記處

每次它告訴我,他無法找到指定的文件。 也許Windows腳本宿主開始遲到我的vbs腳本?

我該怎麼辦?

vbs延遲啓動?這需要另一個循環,但我的腳本不可見。

vbs在startupfolder中?更好地採取註冊表。由於其他原因,我無法使用啓動文件夾。

謝謝您的回答:)

+6

該問題是否在您指定loop.bat的全路徑名也發生(例如作爲'WScript.CreateObject(「WScript.Shell」).Run「C:\ Scripts \ loop.bat」,0,0')? – 2011-06-09 12:43:04

+0

我是盲人,但現在我可以看到;)WSH不是必須首先啓動的服務。 VBS和蝙蝠都在同一個文件夾中,但仍然非常不尋常,我不得不放棄整個路徑。它現在正常工作,謝謝fmunkert;) – bendebass 2011-06-10 23:54:12

回答

2

我知道這是老了......但我想我會把這萬一有人絆倒在這裏。

如果你添加了一些東西來運行,除非另有說明,否則它的工作目錄是C:\ Windows \ System32所以如果你指向一個文件,「mybat.bat」它會認爲它在c:\ windows \ system32 \ mybat.bat

這就是爲什麼你需要指定在vbs中的整個路徑。

,如果你是在一個bat文件並添加到您的文件的頂部:

PUSHD %~dp0 

馬丁

+0

您也可以將文件添加到系統>高級>環境變量>系統變量作爲「mybat.bat」,以便當它在啓動時調用vbs只是mybat.bat Windows知道在哪裏如果它不在system32中找到它。 – iesou 2012-03-14 12:28:09

相關問題