vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: vb.net äquivalent zu runasuser 
Autor: NagLiz
Datum: 03.01.11 12:04

aus irgendeinem grund funktioniert das bei mir leider nicht, bin selber schon darauf gestoßen.

bin grad auf folgedes gestoßen:

Imports System.Runtime.InteropServices
 
Module impersonation
#Region "API Structures"
 
 
    <StructLayout(LayoutKind.Sequential)> _
    Public Structure PROCESS_INFORMATION
 
 
        Dim hProcess As System.IntPtr
        Dim hThread As System.IntPtr
        Dim dwProcessId As Integer
        Dim dwThreadId As Integer
    End Structure
    <StructLayout(LayoutKind.Sequential)> _
    Public Structure STARTUPINFO
 
        Dim cb As Integer
        Dim lpReserved As System.IntPtr
        Dim lpDesktop As System.IntPtr
        Dim lpTitle As System.IntPtr
        Dim dwX As Integer
        Dim dwY As Integer
        Dim dwXSize As Integer
        Dim dwYSize As Integer
        Dim dwXCountChars As Integer
        Dim dwYCountChars As Integer
        Dim dwFillAttribute As Integer
        Dim dwFlags As Integer
        Dim wShowWindow As Short
        Dim cbReserved2 As Short
        Dim lpReserved2 As System.IntPtr
        Dim hStdInput As System.IntPtr
        Dim hStdOutput As System.IntPtr
        Dim hStdError As System.IntPtr
    End Structure
 
#End Region 
 
#Region "API Constants"
 
    Private Const LOGON_NETCREDENTIALS_ONLY As Integer = &H2
    Private Const NORMAL_PRIORITY_CLASS As Integer = &H20
    Private Const CREATE_DEFAULT_ERROR_MODE As Integer = &H4000000
    Private Const CREATE_NEW_CONSOLE As Integer = &H10
    Private Const CREATE_NEW_PROCESS_GROUP As Integer = &H200
    Private Const LOGON_WITH_PROFILE As Integer = &H1
#End Region
 
#Region "API Functions"
 
 
    Private Declare Unicode Function CreateProcessWithLogon Lib "Advapi32" _
      Alias "CreateProcessWithLogonW" _
        (ByVal lpUsername As String, _
   ByVal lpDomain As String, _
      ByVal lpPassword As String, _
      ByVal dwLogonFlags As Integer, _
      ByVal lpApplicationName As String, _
      ByVal lpCommandLine As String, _
      ByVal dwCreationFlags As Integer, _
      ByVal lpEnvironment As System.IntPtr, _
      ByVal lpCurrentDirectory As System.IntPtr, _
      ByRef lpStartupInfo As STARTUPINFO, _
      ByRef lpProcessInfo As PROCESS_INFORMATION) As Integer
 
    Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As _
      System.IntPtr) As Integer
#End Region
 
    Public Sub RunProgram(ByVal UserName As String, ByVal Password As String, _
      ByVal Domain As String, ByVal Application As String, ByVal CommandLine As _
      String, ByRef pid As Integer)
 
 
        Dim siStartup As STARTUPINFO
        Dim piProcess As PROCESS_INFORMATION
        Dim intReturn As Integer
        If CommandLine Is Nothing OrElse CommandLine = "" Then CommandLine = _
          String.Empty
        siStartup.cb = Marshal.SizeOf(siStartup)
        siStartup.dwFlags = 0
        intReturn = CreateProcessWithLogon(UserName, Domain, Password, _
          LOGON_WITH_PROFILE, Application, CommandLine, _
                                           CREATE_DEFAULT_ERROR_MODE, _
                                           IntPtr.Zero, IntPtr.Zero, siStartup, _
                                           piProcess)
        pid = piProcess.dwProcessId
 
        If intReturn = 0 Then
 
            Throw New System.ComponentModel.Win32Exception( _
              Marshal.GetLastWin32Error())
        End If
        CloseHandle(piProcess.hProcess)
        CloseHandle(piProcess.hThread)
    End Sub
 
 
End Module
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
vb.net äquivalent zu runasuser1.998NagLiz03.01.11 09:46
Re: vb.net äquivalent zu runasuser1.136ModeratorDaveS03.01.11 11:27
Re: vb.net äquivalent zu runasuser1.129NagLiz03.01.11 12:04
Re: vb.net äquivalent zu runasuser1.158ModeratorDaveS03.01.11 12:36
Re: vb.net äquivalent zu runasuser1.235NagLiz03.01.11 12:43
Re: vb.net äquivalent zu runasuser1.176ModeratorDaveS03.01.11 13:25
Re: vb.net äquivalent zu runasuser1.161NagLiz03.01.11 13:37
Re: vb.net äquivalent zu runasuser1.073NagLiz03.01.11 13:39
Re: vb.net äquivalent zu runasuser1.243NagLiz03.01.11 13:46
Re: vb.net äquivalent zu runasuser1.136ModeratorDaveS03.01.11 14:06

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel