GetUserNameEx

Aus API-Wiki
Zur Navigation springenZur Suche springen


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 Err.LastDLLError 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, <syntaxhighlight lang="vb">NullChar)
    If lngBufSize <> 0 Then
        strBuffer = Left$(strBuffer, lngBufSize)
    End If
Else
    '   Da liegt wohl ein Fehler vor
    strBuffer = <syntaxhighlight lang="vb">NullString
End If

Debug.Print strBuffer


Betriebssysteme

  • ab Windows NT 5.0 (2000)
  • ab Windows CE .NET 4.0


Verwandte Funktionen

GetUserName


Quellen

MSDN Library: GetUserNameEx