2023年12月14日发(作者:)
以管理员身份运行程序的vbs命令
1、以管理员身份运行程序的命令,用来提升权限去运行一些cmd命令等
'以管理员身份运行程序的命令
Set objWMIServices = GetObject("winmgmts:{impersonationLevel=impersonate}!.rootcimv2")
Set objWbemObjectSet = ery(_
"SELECT * FROM Win32_Process WHERE " &_
"ExecutablePath='" & Replace(me,"","") & "' and " & _
"CommandLine LIKE '%" & Name & "%'")
for each objWbemObject in objWbemObjectSet
cmdline = dLine
next
if then
file = nts(0)
if file="/?" then
call ShowHelp()
end if
Set RegEx = new RegExp
Case = true
= true
n = "||||(|)|[|]|{|}|^|$|.|*|?|+"
temp1 = e(Name, "$&")
temp2 = e(file, "$&")
= false
n = "^.*?" & temp1 & "[""s]*" & temp2 & """?s*"
args = e(cmdline, "")
' file, args
else
file = ""
'args = "/k cd /d """ & CreateObject("").CurrentDirectory & Chr(34)
end if
'核心代码
Set sh = CreateObject("ation")
call xecute( file, args, , "runas" )
function ShowHelp()
dim HelpStr
HelpStr = "以管理员身份运行程序。" & vbCrLf _
& vbCrLf _
& Name & " [program] [parameters]..." & vbCrLf _
& vbCrLf _
& "program 要运行的程序" & vbCrLf _
& "parameters 传递给 program 的参数" & vbCrLf _
& vbCrLf
HelpStr
end function
建议放到%SystemRoot%system32目录下,对喜欢玩cmd而且操作系统是win7的人有点用处。
偶尔用到某些命令(如)需要管理员权限,直接在cmd中 admin reg add ... 即可。
2、如果是想用vbs以管理员权限运行自身需要如下命令
将其添加到文件开头
Set WshShell = Object("")
If = 0 Then
Set ObjShell = CreateObject("ation")
xecute "" _
, """" & FullName & """ RunAsAdministrator", , "runas", 1
End if
3、Windows 10 为VBS文件添加以管理员权限运行选项
单击“开始”按钮,在搜索输入框中输入“regedit”并回车运行打开注册表编辑器,依次单击转到
“HKEY_CLASSES_ROOTVBSFileShel”项,单击“编辑”菜单,指向“新建”,选择“项”,新建一个名为“runas”的项,然后再重
复新建项操作,在其下再建立一个“command”项,单击“command”项,在右侧窗口上双击修改“默认”值的数据,将其数据修改
为:
C: “%1” %*
再单击“编辑”菜单,指向“新建”,选择“字符串值”,新建一个名为“IsolatedCommand”的值并双击该值,将其数据也改为:
C: “%1” %*确认无误后,关闭注册表编辑器,当你在资源管理器上用鼠标右键单击VBS文件时,经常会发现多出了一个“以管理员身份运
行”的选项,选择它即可让脚本以足够的权限运行。
4、VBS使用管理员权限启动BAT
Set objShell = CreateObject(“”)
strPath = Replace(FullName, 文件名, “”)
("runas /user:administrator " & strPath & “”)
1000
ys “password{ENTER}”
1000
注意:runas是无法传递参数的
5、自动以管理员身份运行批处理(bat)文件
在日常运维工作中,为方便对windows用户进行系统安装或配置等,使用Windows自带的批处理(bat文件)是一种最为简单快
速的方法。
但是,批处理脚本不会默认已管理员身份运行,一般情况下,我会将脚本命名为"XXXXXX(请右键点击,用管理员身份运
行!).bat",但总有些用户会忽略这条提示,直接运行,此时由于权限不足,导致脚本运行失败。
我们可以使用一种变通的方法,让bat启动时,首先调用vbs脚本,通过vbs脚本,以管理员身份调用该bat的 runas 部分
我们的脚本可以写在runas 下,这样就点击该bat脚本,就可以已管理员身份运行了
示例代码如下
@ECHO OFF
setlocal EnableDelayedExpansion
color 3e
title 添加服务配置
PUSHD %~DP0 & cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("ation").shellexecute("%~s0","goto :runas","","runas",1)()&goto :eof
:runas
::填写自己的脚本
echo 执行完毕,任意键退出
pause >nul
exit
以上就是 以管理员身份运行程序的vbs命令的详细内容,更多关于管理员身份运行程序的资料请关注其它相关文
章!


发布评论