麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > BAT > 正文

CMD命令行中以管理員權(quán)限啟動應(yīng)用程序?qū)崿F(xiàn)方法

2020-07-26 20:13:10
字體:
供稿:網(wǎng)友

很多時(shí)候我們需要管理員權(quán)限來運(yùn)行bat那么就需要結(jié)合vbscript來實(shí)現(xiàn)了

方法一:

%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit

常用

@echo offmode con lines=30 cols=60%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exitcd /d "%~dp0"rem 下面可以寫你的bat代碼了

方法二:

@echo off %1 %2 ver|find "5.">nul&&goto :st mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :st","","runas",1)(window.close)&goto :eof :st copy "%~0" "%windir%/system32/" 

原理類似

ShellExecute method

Run a script or application in the Windows Shell.

Syntax
.ShellExecute "application", "parameters", "dir", "verb", window

.ShellExecute 'some program.exe', '"some parameters with spaces"', , "runas", 1
Key
application The file to execute (required)
parameters Arguments for the executable
dir Working directory
verb The operation to execute (runas/open/edit/print)
window View mode application window (normal=1, hide=0, 2=Min, 3=max, 4=restore, 5=current, 7=min/inactive, 10=default)
Note the different (double " and single ' ) quotes that can be used to delimit paths with spaces.

The runas verb is undocumented but can be used to elevate permissions. When a script is run with elevated permissions several aspects of the user environment may change: The current directory, the current TEMP folder and any mapped drives will be disconnected.

runas will fail if you are running in WOW64 (a 32 bit process on 64 bit windows) for example %systemroot%/syswow64/cmd.exe ...

The ShellExecute method is a member of the IShellDispatch2 object.

Examples

Run a batch script with elevated permissions, flag=runas:

Set objShell = CreateObject("Shell.Application")objShell.ShellExecute "E:/demo/batchScript.cmd", "", "", "runas", 1

Run a VBScript with elevated permissions, flag=runas:

Set objShell = CreateObject("Shell.Application")objShell.ShellExecute "cscript", "E:/demo/vbscript.vbs", "", "runas", 1

“If you don't execute your ideas, they die” ~ Roger Von Oech

Related:

Run with elevated permissions - Script to run as Admin
.Exec - Execute command, returning an object
.Run - Run a command
joeware.net - CPAU (Create Process As User) like RunAs but with an options to encrypt the password.
Equivalent CMD command: ShellRunAs - Run a command under a different user account

 批處理文件中的%~dp0表示含義

~是擴(kuò)展的意思,相當(dāng)于把一個(gè)相對路徑轉(zhuǎn)換絕對路徑
%0代指批處理文件自身
%1表示批處理文件命令行接收到的第一個(gè)參數(shù),%2表示第二個(gè),以此類推
%~d0 是指批處理所在的盤符,其中d代表drive
%~p0 是指批處理所在的目錄,其中p代表path
%~dp0 是批處理所在的盤符加路徑


cd %~dp0 就是進(jìn)入批處理所在目錄了


詳細(xì)解釋還可參考命令 call /?

自從Vista帶來了UAC之后,應(yīng)用程序就變成了兩種,有管理員權(quán)限的,和沒有管理員權(quán)限的。一些老的應(yīng)用程序會莫名其妙地出錯(cuò),這時(shí)候就要考慮右擊應(yīng)用程序,然后“以管理員身份運(yùn)行”。這還不是什么大問題,exe文件的右鍵菜單里都會有這個(gè),但是對于一些腳本文件(cmd, js一類)來說,就沒那么方便了。通常需要重新開一個(gè)帶管理員權(quán)限的命令行窗口,然后打很多cd回到剛的文件夾,然后再運(yùn)行腳本,相當(dāng)麻煩。

搜了一下,找到一個(gè)解決辦法。把下面的代碼保存為Elevate.js:

var command = WScript.Arguments.Item(0);var argument = "";for (var i = 0; i < WScript.Arguments.Count(); ++i){ argument += WScript.Arguments.Item(i) + " ";} try{ var shellapp = new ActiveXObject("Shell.Application"); shellapp.ShellExecute(command, argument, null, "runas", 1);}catch(e){ WScript.Echo("Something wrong: " + e.description);}

以后要以管理員身份運(yùn)行程序的時(shí)候,只要輸入“Elevate <exefile> <arguments>”就可以了,比如“Elevate cmd /k”。

當(dāng)然,這個(gè)逃不過UAC的檢查,還是會有一個(gè)對話框彈出來要點(diǎn)“確定”的。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久草在线网址 | 精品一区二区三区在线视频 | 免费观看一级 | 一级电影免费 | 欧美成人免费在线视频 | 九色com | 久久久久久久亚洲视频 | 日操操夜操操 | 色综合激情| 久久影院在线观看 | 黄色网欧美 | 欧美一级美国一级 | 黄网站在线免费看 | 久久精品亚洲精品国产欧美kt∨ | av在线影片 | 成人片免费视频 | 国产一级aa大片毛片 | 性 毛片| 国产精品久久久久一区二区 | 国产一级免费不卡 | 久草在线资源观看 | 92精品国产自产在线 | 毛片区| 毛片视频免费观看 | 在线免费黄色网 | 精品一区二区在线播放 | 国产韩国精品一区二区三区久久 | 欧美a黄 | 午夜在线视频一区二区三区 | 日日狠狠久久偷偷四色综合免费 | 亚洲网站在线观看视频 | 成人毛片100免费观看 | 黄网站在线免费看 | 欧美性受xxxx人人本视频 | 九九热视频免费 | 欧美成人精品一区二区三区 | 九九午夜 | 毛片视频网址 | 激情综合在线观看 | 精品国产一区二区亚洲人成毛片 | 免费在线观看午夜视频 |