Set WshShell = CreateObject("WScript.Shell") WshShell.Run "cmd.exe /c runas /user:MMXNY %cd%\360entclientmigrate.exe", 1, False WScript.Sleep 1000 WshShell.SendKeys "Mgs" WScript.Sleep 1000 WshShell.SendKeys "+" WshShell.SendKeys "23" WshShell.SendKeys "{enter}"代码进行封装并不模拟键盘输入
时间: 2023-07-24 10:14:22 浏览: 189
VBS Runas 自动输入密码, 明文
要封装代码并避免模拟键盘输入,您可以尝试使用 `CreateObject("Shell.Application")` 和 `ShellExecute` 方法来运行程序。以下是封装代码的示例:
```vbscript
Set ShellApp = CreateObject("Shell.Application")
ShellApp.ShellExecute "cmd.exe", "/c runas /user:MMXNY """ & WScript.ScriptFullName & "\360entclientmigrate.exe""", "", "runas", 1
WScript.Sleep 1000
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "360entclientmigrate.exe My+23", 1, False
```
这段代码首先使用 `ShellExecute` 方法以管理员权限运行一个新的命令行窗口,并在其中执行 `runas /user:MMXNY` 命令来运行 `360entclientmigrate.exe`。然后,代码等待一秒钟后,使用 `WshShell.Run` 以普通用户权限运行 `360entclientmigrate.exe` 程序,并传递参数 "My+23"。
请注意,这种方法仍然涉及以管理员权限运行命令行来启动程序,并且需要确保脚本和程序的来源可信。请遵循适当的系统和网络策略,并确保在运行任何代码之前备份相关文件。
阅读全文