本公司目前還在使用AutoCAD 2005的老軟體,目前發現安裝在Win7以上版本的OS,在執行時需要Administrator的權限,但因目前資安管理辦法,一般User帳號不能擁有Admin的權限,只能擁有users的權限,所以一般User不能安裝任何軟體。也因此不能在win7執行類似AutoCAD 2005這種老軟體,但User工作上又定要用到,所以我在網上找到vbs用另外使用者開啟檔案的方法,如下:
'Start Encode
set WshShell = CreateObject("WScript.Shell")
WshShell.Run "runas /user:work@abc.com ""C:\Program Files (x86)\AutoCAD 2005\acad.exe"""
WScript.Sleep 500
WshShell.Sendkeys "123456~"
可是此方法在win10又行不通了,如果win7有更新到最新Path的,此方法也不行,請教各位大神,是否還有其他更穩定的方法,可以讓win7以上OS執行類似AutoCAD 2005這種老軟體。
CPAU -u user [-p password] -ex "WhatToRun" [switches]
user:執行該程式的用戶名,網域環境需要全名如 domain\administrator
password:該用?的密碼,如果?有此關連,回應後會要求輸密碼
-ex: 需要執行的程序,如有空格出現的路徑,建議加雙引號,如 "c:\Program Files\sample.exe"
-lwp或-lwop 如果是本機帳號,必須使用此關聯才能使用交互式認證
例:CPAU -u administrator -p 123456 -ex CMD -lwp ; 管理模式下的命令行
CPAU -u administrator -p 123456 -ex "cscript e:\lock.vbs" -lwp 執script
CPAU -u user -p 123456 -ex "c:\Program Files\QQ2008 Beta2\sample.exe" -lwp 執行程式
如果直接把命令寫入處理或快捷方式交給使用者執行會直接暴露了管理者密碼。
所以CPAU提供了將命令加密,避免帳號和密碼以明文出現。
首先,將準備要執行的命令加密
例如: CPAU -u administrator -p 123456 -ex "f:\Program Files\QQ2008 Beta2\qq.exe" -enc -file G:\temp\start.mp3
-enc 為加密關聯
-file 加密文件的輸出路徑,副檔名不限。(-lwp和-lwop關聯暫時忽略。)
完成后如果顯示: The command completed successfully表示成功完成。
用記事本可以打開加密後的文件為一堆亂碼
非管理者帳號只需要使用該加密文件就可以執行程式了,不會再有明文的密碼出現
CPAU -dec -file g:\temp\start.mp3 -lwp
-dec:解密
-file:加密文件路徑
-lwp或-lwop 關聯在此掛上
試過了還是不行,錯誤訊息如下:
C:>CPAU -u abc.com\work -p 123456 -ex "C:\Program Files (x86)\AutoCAD 2005
acad.exe" -lwop
CPAU V01.11.00cpp Joe Richards (joe@joeware.net) November 2005
Current Security Context: FAVITE\administrator
Error: Couldn't create Process: (740) 要求的作業需要提升的權限。
The command did not complete successfully.
請在 "C:\Program Files (x86)\AutoCAD 2005
acad.exe" 改成呼叫批次檔
做個 AutoCAD.bat 內容如下
CPAU -u abc.com\work -p 123456 -ex "Run-AutoCAD.bat" -lwop //呼叫 CPAU 執行管理者權限
而再做個 Run-AutoCAD.bat 內容如下
"C:\Program Files (x86)\AutoCAD 2005\acad.exe" //再執行 Run-AutoCAD.bat 呼叫真正 AutoCAD 的路徑
以後執行 AutoCAD.bat 就以管理者執行了