Resourcedomain unter NT4.0 herausfinden

Hallo Experten,

ich hab mal wieder ein kleine Problemchen: Ich möchte mit VB6 den Namen der Resourcedomain * unter WinNT4.0 (SP6) auslesen.
Den Eintrag in der Registry unter „HKLM\SOFTWARE\Microsoft\Windows_NT\CurrentVersion\Winlogon“ auszulesen möchte ich dabei vermeiden, da dieser auch manipuliert werden kann.

Es sollte doch möglich sein, die gewünschte Information* mittels API auszulesen? Wer kann helfen?

Gruß
(Woly)

* ich brauche extakt den Eintrag, der bei „Netzwerkumgebung => Eigenschaften => Domäne“ steht.

hi

hab leider kein windows NT 4 und auch keine Domäne darum kann ich es nicht testen aber hier meine 2 lösungsvorschläge:

  1. Es gibt eine SystemVariable dort steht der Domänenname drin.
    cmd starten „set“ eingeben und mal nachgucken welche variable dafür geeignet ist. dann in vb mit environ(„MYVAR“) kannst du es rauslesen

oder:

  1. dieser API gibt DOMAIN\User zurück. dann kannst du \user abschneiden und bist auch beim resultat :smile:

Option Explicit

Private Declare Function GetUserNameEx Lib „secur32.dll“ Alias „GetUserNameExA“ (ByVal NameFormat As Long, ByVal lpBuffer As String, nSize As Long) As Long

Private Enum eDomainNTUserType
eDNTU_NameUnknown = 0
eDNTU_NameFullyQualifiedDN = 1
eDNTU_NameSamCompatible = 2
eDNTU_NameDisplay = 3
eDNTU_NameUniqueId = 6
eDNTU_NameCanonical = 7
eDNTU_NameUserPrincipal = 8
eDNTU_NameCanonicalEx = 9
eDNTU_NameServicePrincipal = 10
End Enum

Public Function GetDomainNTUserName() As String
Dim sBuffer As String
Dim lSize As Long
Dim lRV As Long

On Error GoTo ErrHandler

lSize = 255
sBuffer = String(lSize, &H0)

lRV = GetUserNameEx(CLng(eDNTU_NameSamCompatible), sBuffer, lSize)

If lRV 0 Then
'successful
sBuffer = Left(sBuffer, lSize)
Else
sBuffer = „“
End If

GetDomainNTUserName = sBuffer

Exit Function
ErrHandler:
Select Case Err.Number
Case Else
Err.Raise Err.Number, Err.Source & „+AmeliaGenUtil\CNTUserInfo\GetDomainNTUserName“, Err.Description
End Select
End Function

Private Sub Form_Load()
MsgBox GetDomainNTUserName
End Sub

gruss
giuseppe

Hallo Giuseppe,

Deine Lösungsvorschläge funktioniert zwar, bringen mir aber statt der gewünschten „RessourceDomain“ leider den Namen der „Anmeldedomain“.

Wenn Du noch Ideen hast: Her damit! :wink:

Gruß und schonmal danke für Deine Bemühungen
(Woly)

Hallo

Also jetzt bin ich geschäft und in bei „Netzwerkumgebung => Eigenschaften => Domäne“ steht bei uns der name der Domäne drin?
Was ist die Resourcedomain?

gruss

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Bei Euch ist (wie in den meisten Fällen) die RessourceDomain identisch mit der Anmeldedomain.

In größeren Netzwerken (wie in meiner Firma) hat man viele verschiedene Domains, die untereinander mit sog. Vertrauensstellungen verbunden sind. Die Benutzer können sich aber an verschiedenen Domains anmelden.

Um die Benutzerverwaltung nun einfach zu halten, hat man EINE AnmeldeDomain eingerichtet, in der die Benutzer und deren Rechte verwaltet werden. Aber die eigentliche Domain, bei der man gerade Mitglied ist, ist eine andere, nämlich die RessoureDomain.

Gruß
(Woly)