GetUserNameEx

Aus API-Wiki
Version vom 29. März 2007, 16:15 Uhr von Helge Rex (Diskussion | Beiträge) (Die Seite wurde neu angelegt: __NOTOC__ Mit GetUserNameEx können diverse Informationen zum angemeldeten Benutzer ermittelt werden. = Deklaration = <PRE> Declare Function GetUserNameEx Lib "secur3...)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen
Die druckbare Version wird nicht mehr unterstützt und kann Darstellungsfehler aufweisen. Bitte aktualisiere deine Browser-Lesezeichen und verwende stattdessen die Standard-Druckfunktion des Browsers.


Mit GetUserNameEx können diverse Informationen zum angemeldeten Benutzer ermittelt werden.

Deklaration

Declare Function GetUserNameEx Lib "secur32.dll" _
                Alias "GetUserNameExA" ( _
                ByVal NameFormat As EXTENDED_NAME_FORMAT, _
                ByVal lpBuffer As String, _
                ByRef nSize As Long) As Long


Paramter

NameFormat

Element aus EXTENDED_NAME_FORMAT, mit dem festgelegt wird, welche Informationen ermittelt werden sollen.


lpBuffer

Zeichenkette, die die ermittelten Informationen aufnimmt.


nSize

Länge der Zeichenkette, die die ermittelten Informationen aufnimmt.


Rückgabe

War der Aufruf erfolgreich, ist der Wert ungleich 0. Anderenfalls kann der Fehlercode mit GetLastError ermittelt werden.
Ist die Zeichenkette nicht ausreichend groß, wird die benötigte Größe in nSize übertragen.


Beispiel

Dim strBuffer As String
Dim lngBufSize As Long
Dim lngResult As Long

'   Benötigten Speicher ermitteln
lngResult = GetUserNameEx(enfNameSamCompatible, strBuffer, lngBufSize)

'   Speicher bereitstellen
strBuffer = String$(lngBufSize \ 2, &H0&)

'   Informationen auslesen
lngResult = GetUserNameEx(enfNameSamCompatible, strBuffer, lngBufSize)

'   Informationen nachbearbeiten
If (lngResult <> 0) Then
    '   Abschließendes NullByte entfernen
    lngBufSize = InStr(1, strBuffer, vbNullChar)
    If lngBufSize <> 0 Then
        strBuffer = Left$(strBuffer, lngBufSize)
    End If
Else
    '   Da liegt wohl ein Fehler vor
    strBuffer = vbNullString
End If

Debug.Print strBuffer


Betriebssysteme

  • Windows NT 5.0 (2000) und neuer
  • Windows CE .NET 4.0 (und neuer)


Verwandte Funktionen

GetUserName


Quellen

MSDN Library: GetUserNameEx




Diese Deklaration wurde von Helge Rex erstellt. Sollten Sie Fragen zur Verwendung der entsprechenden Funktion haben, so verwenden Sie hierfür bitte das Visual Basic Forum, die Artikeldiskussionsseite oder die Nutzerdiskussionsseite.