Skip to content

Tools - System Utility Class

cToolsSystem - System Operation Tools

Overview

Provides system-level operations, such as running programs as administrator.

Methods

RunAsAdmin

Runs the specified program as administrator.

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

Parameters:

ParameterTypeDescription
PathVariantProgram path (supports App object or string)
StartArgsVariantOptional, command line argument array

Returns:

ShellExecute execution result.

Example:

vb
' Method 1: Pass App object
VBMAN.ToolsSystem.RunAsAdmin App

' Method 2: Pass path string
VBMAN.ToolsSystem.RunAsAdmin "C:\\Program Files\\MyApp\\MyApp.exe"

' Run with arguments
VBMAN.ToolsSystem.RunAsAdmin App, "--config", "debug"

Complete Example

vb
Private Sub RestartAsAdmin()
    Dim Result As Long
    
    ' Check if already running as administrator (needs additional check logic)
    If Not IsAdmin() Then
        Result = VBMAN.ToolsSystem.RunAsAdmin(App)
        
        If Result > 32 Then
            ' Successfully started admin process, exit current process
            End
        Else
            MsgBox "Unable to elevate to administrator privileges", vbExclamation
        End If
    End If
End Sub

Notes

  1. Calling will trigger UAC (User Account Control) prompt
  2. If user refuses to elevate privileges, program will not start
  3. Return value greater than 32 indicates success

VB6 and LOGO copyright of Microsoft Corporation