2015-08-16 38 views
2

我想獲得替換或重命名utilman.exe的權限。下面的腳本不起作用。如何獲取替換utilman.exe的權限

Dim strFolder, strUser, strDomain 
strFolder = "c:\windows\system32\utilman.exe" 
Set FSO = CreateObject("Scripting.FileSystemObject") 
Set ObjShell = Wscript.CreateObject("Wscript.Shell") 
objShell.Run("takeown /A /f" & Chr(34) & strFolder & chr(34)),1,True 
objShell.Run("icacls chr(34) & strFodler & chr(34) /grant administrator:F"),1,True 
Wscript.quit 
+1

什麼是你得到錯誤信息? – Tim

回答

0

您定義的icacls命令行作爲一個單一的字符串時,你顯然希望它含有可變strFolder的雙引號中的價值。您必須使用字符串連接才能在VBScript中工作。另外,您可能希望在takeown的參數/f後面放一個空格,並刪除命令周圍的括號。

更改此:

objShell.Run("takeown /A /f" & Chr(34) & strFolder & chr(34)),1,True 
objShell.Run("icacls chr(34) & strFodler & chr(34) /grant administrator:F"),1,True 

到這一點:

objShell.Run "takeown /A /f " & Chr(34) & strFolder & chr(34), 1, True 
objShell.Run "icacls " & chr(34) & strFolder & chr(34) & " /grant administrator:F", 1, True