CreateProcessAsUser (advapi32)
Last changed: -87.186.76.92

.
Summary

C# Signature:

VB Signature:

Private Declare Auto Function CreateProcessAsUser Lib "advapi32" ( _

    ByVal hToken As IntPtr, _
    ByVal strApplicationName As String, _
    ByVal strCommandLine As String, _
    ByRef lpProcessAttributes as SECURITY_ATTRIBUTES, _
    ByRef lpThreadAttributes as SECURITY_ATTRIBUTES, _
    ByVal bInheritHandles as Boolean, _
    ByVal dwCreationFlags As Integer, _
    ByVal lpEnvironment As Integer, _
    ByVal lpCurrentDriectory As Integer, _
    ByRef lpStartupInfo As STARTUPINFO, _
    ByRef lpProcessInformation As PROCESS_INFORMATION) As Integer

User-Defined Types:

SECURITY_ATTRIBUTES

PROCESS_INFORMATION

STARTUPINFO

LOGON_TYPE

LOGON_PROVIDER

Notes:

None.

Tips & Tricks:

Please add some!

Sample Code:

Dim pi As PROCESS_INFORMATION

Dim si As STARTUPINFO

Dim hToken as System.IntPtr

If LogonUser(userPart, domainPart, password, LOGON_TYPE.LOGON32, _

         LOGON_PROVIDER.LOGON32_PROVIDER_DEFAULT, hToken) Then

    Dim saProcessAttributes as SECURITY_ATTRIBUTES = new SECURITY_ATTRIBUTES
    Dim saThreadAttributes as SECURITY_ATTRIBUTES = new SECURITY_ATTRIBUTES  
    If CreateProcessAsUser(hToken, "", strCmdLine, saProcessAttributes, _
               saThreadAttributes, False, 0, 0, 0, si, pi) Then

    Throw New Exception(Err.Description)
    End If

End If

Alternative Managed API:

Do you know one? Please contribute it!

Documentation