VBMAN.ToolsSystem - 系统操作对象
概述
VBMAN.ToolsSystem 提供了系统级别的操作功能,如以管理员身份运行程序等。
方法
RunAsAdmin
以管理员身份运行指定的程序
vb
Public Function RunAsAdmin(ByRef Path As Variant, ParamArray StartArgs() As Variant) As Long参数:
Path- 程序路径(字符串)或 App 对象StartArgs- 可选,传递给程序的命令行参数
返回: ShellExecute 的执行结果
说明:
- 使用
runas操作提升权限 - 支持 App 对象作为路径参数
- 参数支持可变数组
示例:
vb
' 使用 App 对象(推荐)
VBMAN.ToolsSystem.RunAsAdmin App
' 使用字符串路径
VBMAN.ToolsSystem.RunAsAdmin "C:\\Program Files\\MyApp\\app.exe"
' 带参数
VBMAN.ToolsSystem.RunAsAdmin App, "--config", "production"
' 使用外部程序
VBMAN.ToolsSystem.RunAsAdmin "notepad.exe", "C:\\test.txt"综合示例
示例1: 重启自身(管理员权限)
vb
Private Sub RestartAsAdmin()
' 以管理员权限重新启动程序
VBMAN.ToolsSystem.RunAsAdmin App
' 关闭当前实例
End
End Sub示例2: 运行外部工具
vb
Private Sub RunToolAsAdmin()
Dim result As Long
result = VBMAN.ToolsSystem.RunAsAdmin("C:\\Tools\\cleanup.exe", "/silent")
If result > 32 Then
Debug.Print "程序已启动"
Else
Debug.Print "启动失败,错误码: " & result
End If
End Sub注意事项
- 用户确认: 提升权限会触发 UAC 提示,需要用户确认
- 返回值检查: 返回值小于等于 32 表示出错
- 路径问题: 使用 App 对象可避免路径问题