vbs ShellExecute运行外部程序时如何判断外部程序执行成功与否

2023-12-01 0 683

需要vbs执行一些命令,比如 ""uwfmgr filter enable"" (统一写入筛选器), 但是这个uwfmgr.exe需要管理员权限才能运行相关命令目前我是这么写的

Set sst = CreateObject(\”Shell.Application\”)
Call sst.ShellExecute(\”uwfmgr\”,\”filter enable\”, ,\”runas\”,0)

这样可以以管理员身份运行命令, 但是我怎么才能判断uwfmgr执行是成功还是失败的? (管理员cmd运行命令会有返回值)

原来我执行一些cmd命令都是用

intReturn = WScript.CreateObject("wscript.shell").Run("xxxxxx",1,true)

通过判断intReturn是否为0来判断命令执行成功失败, 但是这个不能执行需要管理员权限的命令, 有没有办法让Run能以管理员运行命令?

如何隐藏运行Setup.bat文件

\’以管理员身份运行程序的命令admin.vbs
Set objWMIServices = GetObject(\”winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2\”)
Set objWbemObjectSet = objWMIServices.ExecQuery(_
\”SELECT * FROM Win32_Process WHERE \” &_
\”ExecutablePath=\’\” & Replace(WScript.FullName,\”\\\”,\”\\\\\”) & \”\’ and \” & _
\”CommandLine LIKE \’%\” & WScript.ScriptName & \”%\’\”)
for each objWbemObject in objWbemObjectSet
cmdline = objWbemObject.CommandLine
next
if WScript.Arguments.Count then
file = WScript.Arguments(0)
if file=\”/?\” then
call ShowHelp()
WScript.Quit
end if
Set RegEx = new RegExp
RegEx.IgnoreCase = true
RegEx.Global = true
RegEx.Pattern = \”\\\\|\\/|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\^|\\$|\\.|\\*|\\?|\\+\”
temp1 = RegEx.Replace(WScript.ScriptName, \”\\$&\”)
temp2 = RegEx.Replace(file, \”\\$&\”)
RegEx.Global = false
RegEx.Pattern = \”^.*?\” & temp1 & \”[\”\”\\s]*\” & temp2 & \”\”\”?\\s*\”
args = RegEx.Replace(cmdline, \”\”)
\’WScript.Echo file, args
else
file = \”Setup.bat\”
\’args = \”/k cd /d \”\”\” & CreateObject(\”WScript.Shell\”).CurrentDirectory & Chr(34)
end if
\’核心代码
Set sh = CreateObject(\”Shell.Application\”)
call sh.ShellExecute( file, args, , \”runas\” )
function ShowHelp()
dim HelpStr
HelpStr = \”以管理员身份运行程序。\” & vbCrLf _
& vbCrLf _
& WScript.ScriptName & \” [program] [parameters]…\” & vbCrLf _
& vbCrLf _
& \”program 要运行的程序\” & vbCrLf _
& \”parameters 传递给 program 的参数\” & vbCrLf _
& vbCrLf
WScript.Echo HelpStr
end function

到此这篇关于vbs ShellExecute运行外部程序时如何判断外部程序执行成功与否的文章就介绍到这了,更多相关vbs ShellExecute运行外部程序内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 VBS vbs ShellExecute运行外部程序时如何判断外部程序执行成功与否 https://www.u-9.cn/jiaoben/vbscript/9613.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务