Skip to content

VBMAN.ToolsSystem - System Operation Object

Overview

VBMAN.ToolsSystem provides system-level operation functions, such as running programs as administrator, etc.

Methods

RunAsAdmin

Run specified program as administrator

vb
Public Function RunAsAdmin(ByRef Path As Variant, ParamArray StartArgs() As Variant) As Long

Parameters:

  • Path - Program path (string) or App object
  • StartArgs - Optional, command line parameters passed to program

Returns: ShellExecute execution result

Description:

  • Uses runas operation to elevate privileges
  • Supports App object as path parameter
  • Parameters support variable arrays

Example:

vb
' Use App object (recommended)
VBMAN.ToolsSystem.RunAsAdmin App

' Use string path
VBMAN.ToolsSystem.RunAsAdmin "C:\\Program Files\\MyApp\\app.exe"

' With parameters
VBMAN.ToolsSystem.RunAsAdmin App, "--config", "production"

' Use external program
VBMAN.ToolsSystem.RunAsAdmin "notepad.exe", "C:\\test.txt"

Comprehensive Examples

Example 1: Restart Self (Admin Privileges)

vb
Private Sub RestartAsAdmin()
    ' Restart program with admin privileges
    VBMAN.ToolsSystem.RunAsAdmin App
    
    ' Close current instance
    End
End Sub

Example 2: Run External Tool

vb
Private Sub RunToolAsAdmin()
    Dim result As Long
    result = VBMAN.ToolsSystem.RunAsAdmin("C:\\Tools\\cleanup.exe", "/silent")
    
    If result > 32 Then
        Debug.Print "Program started"
    Else
        Debug.Print "Start failed, error code: " & result
    End If
End Sub

Notes

  1. User Confirmation: Elevating privileges will trigger UAC prompt, requires user confirmation
  2. Return Value Check: Return value less than or equal to 32 indicates error
  3. Path Issues: Using App object can avoid path issues

VB6 and LOGO copyright of Microsoft Corporation