2011-03-31 264 views
2

我有這個.vbs腳本,我試圖在Windows 7上運行。 它必須以完全權限運行,並且必須自動執行。 要清楚當用戶雙擊該文件時,它將得到提示,要求「允許以管理員身份運行該文件」,然後以完全權限運行。以管理員身份運行腳本文件

要做到這一點,我創建了一個調用腳本文件

cscript "V02.vbs" 
pause 

然後,我創建批處理文件,我可以選擇以管理員運行快捷方式的批處理文件(run.bat中)。

我現在遇到的問題是,當我以管理員身份運行批處理文件時,文件夾更改爲c \ windows \ system32。腳本,批處理文件和快捷方式都在同一個文件夾中。有沒有辦法獲取文件夾的位置?

+0

在你的快捷方式中,你是否設置了'start in'屬性? – RRUZ 2011-03-31 15:23:43

+0

開始指向包含文件 – Marcom 2011-03-31 15:25:59

回答

2

我可能誤解了......

最簡單的解決辦法是「硬編碼」這條道路與一個補丁文件 - CD \路徑\爲\我\腳本 CSCRIPT myscript.vbs 暫停

+0

的文件夾,但該文件夾將發送給不同的用戶。它需要以這樣的方式,無論用戶保存它,用戶打開文件夾,雙擊快捷方式,它的工作原理。 – Marcom 2011-03-31 15:28:34

+1

創建用戶首先運行的批處理文件。讓我們說setup.bat - 在該批處理文件中,獲取當前工作目錄並將其插入到腳本中。然後,您可以使用此方法來動態運行 - 作爲管理 - http://www.insidethe.com/blog/2009/12/how-to-launch-a-wsh-vbscript-as-administrator-in-windows- 7-and-vista/ – tamarintech 2011-03-31 16:09:10

+0

很好地工作。謝謝! – Marcom 2011-03-31 16:21:46

1

使用「modifiers with batch parameters」。從鏈接的文檔:

%〜dp1將%1展開爲驅動器號和路徑。

由於%0是你的腳本,%~dp0是你想要什麼:

cscript "%~dp0V02.vbs" 
pause 

注意%〜DP0包括尾部的反斜槓,所以你v02.vbs文件上面的名字變得非常難讀。

相關問題