当前位置: 代码网 > it编程>前端脚本>其它脚本 > vbs ShellExecute运行外部程序时如何判断外部程序执行成功与否

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

2024年05月15日 其它脚本 我要评论
需要vbs执行一些命令,比如 ""uwfmgr filter enable"" (统一写入筛选器), 但是这个uwfmgr.exe需要管理员权限才能运行相关命令

需要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)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com