2012-09-01 190 views
0

我是很新的這一切VBS的東西,因爲基本上所有我需要做的就是讓一個簡單的VBS腳本,我有可能寫的,不過,我的問題是,它給了我800A0035或當我執行它的第一次一個特定的計算機上,當我執行它第二次800A004C錯誤,它運行得OK和做的事情應該是做。順便說一句,在我自己的計算機上,即使在第一次執行時也可以正常工作。 我知道這些錯誤與錯誤的路徑有關,但我已經多次檢查了我的腳本,並且我100%肯定他們是正確的。VBS腳本(VBScript)的錯誤800A0035和/或800A004C

下面是腳本:

Set objFSO = CreateObject("Scripting.FileSystemObject") 
objFSO.MoveFile "rar.bat" , "rarp.bat" 
'HideBat.vbs 
CreateObject("Wscript.Shell").Run "rarp.bat", 0, True 

什麼腳本應該做的是rar.bat文件重命名爲rarp.bat和運行批處理文件(rarp.bat)不彈出命令提示符。我想,批處理文件所做的並不相關,但無論如何,它只是運行WinRAR

rar.bat文件和VBS腳本都在同一個文件夾,這就是爲什麼我在腳本中使用相對路徑。我無法使用絕對路徑,因爲我需要在多臺計算機上運行該腳本。

我已經讀過互聯網上的某個地方,默認情況下VBS腳本首先使用相對路徑查找C:\Windows\System32中的文件。我甚至嘗試過在腳本中使用絕對路徑,但它也不起作用。下面是我需要他們的樣子:%systemdrive%\users\%username%\appdata\roaming\rar.bat但這在VBS腳本中不起作用。

我真的覺得我需要的是一個真正的簡單腳本,但顯然這是相當困難得到它正常工作。我將非常感謝那些幫助我的人。

非常感謝您提前。

問候。

+0

對於在循環中做一個睡眠狀態,那麼不

* 8nnnnnnn *錯誤,請嘗試註銷,然後重新註冊這些文件:'CSCRIPT.EXE,JSCRIPT.DLL,MSSCRIPT.OCX,SCRIPTLE.DLL,VBSCRIPT.DLL,WSCRIPT.EXE,WSHOM.OCX' – Jay

+0

好了,感謝您的建議,但我是VBS腳本的初學者。你能告訴我如何取消註冊並重新註冊這些文件嗎? – user1640405

+0

使用'regsvr32/u {文件名}'取消註冊和'regsvr32 {filename}'註冊。從命令提示符以及從Windows的SYSTEM32目錄運行。 – Jay

回答

1

腳本的唯一方式 - 至少部分出版 - 可以給出一個錯誤是沒有找到重命名的源文件,你應該補充完整劇本和錯誤消息是肯定的。 我想這是由於你的電腦上的安全設置比其餘的電腦更安全,比如UAC?在另一臺PC上,嘗試將這些文件放在像c:\ test這樣的映射文件中,然後在檢查文件rar.bat確實存在於相同的映射中後再運行它。你在另一臺電腦上有相同的憑據(管理員)嗎? 如果你只想運行隱藏的bat文件,爲什麼要重命名?

你怎麼下載蝙蝠?以及如何調用腳本?可能是第二次不再是問題的時機問題。在你的腳本情況檢查,如果該文件是媒體鏈接那裏,如果你想使用絕對路徑,你可以試試這個

Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set WshShell = CreateObject("WScript.Shell") 
Set WshSysEnv = WshShell.Environment("PROCESS") 
path = WshSysEnv("USERPROFILE") & "\appdata\roaming\rar.bat" 
wscript.echo path 
objFSO.MoveFile path , "rarp.bat" 
CreateObject("Wscript.Shell").Run "rarp.bat", 1, True 
+0

感謝您的回答。其實我發表的部分是整個腳本。這裏是錯誤的圖片:「http://i.imgur.com/U63tF.png」我不認爲這是由其他PC的安全設置引起的,因爲我已經在幾臺計算機,XP,VISTA和Win7,有限帳戶以及管理員帳戶。它沒有工作,它在每臺計算機上的行爲都是一樣的。它在第一次執行時沒有工作(它給出錯誤),但它在第二次執行時完美工作。這是我無法理解的!我也遵循你的建議,並將文件放在C:\中無濟於事。 – user1640405

+0

我檢查「rar.bat」與腳本位於同一文件夾中。甚至我的同事也幫助了我。爲什麼該腳本第二次運行時工作正常?我不應該以某種方式使用「GetParentFolder」指定路徑(不知道如何)?正如我之前所說,我100%確定這些文件在同一時間在同一個文件夾中。任何其他想法?我仍然認爲必須有一些與第二次執行時運行良好的事實有關。順便說一句,VBS腳本被下載到這些PC,因此進行了重命名。 – user1640405

+0

根據新信息 – peter