2009-05-20 24 views
1

Wenn Sie NetUserAdd verwenden, wird der Benutzer auf dem lokalen Computer oder als Domänenkonto abhängig von der Rolle des Servers erstellt, auf dem Sie diese Funktion verwendet haben.Erhalten Sie den vollständigen Benutzernamen einen neuen Benutzernamen

Ich möchte den vollständigen Benutzernamen (LOCALCOMPUTER \ USERNAME oder DOMAIN \ USERNAME) abrufen, um es remote zu verwenden.

Gibt es eine Funktion, dies zu tun?

+0

Welche Sprache? Entsprechender Tag. –

+1

Die Sprache spielt keine Rolle. Ich benutze C++, aber ich suche die korrekte Funktion von Windows API. –

Antwort

2

Vorbehalt: Ich habe die Lösung nicht überprüft. Sie können NetGetJoinInformation aufrufen, um zu erfahren, ob der Computer zu einer Domäne und NetServerGetInfo gehört, wenn der Code auf einem Domänencontroller ausgeführt wird. Nach diesen Tests können Sie den Computernamen (GetComputerName) und Domain-Namen (NetWkstaGetInfo) und was auch immer Sie benötigen.

Seien Sie vorsichtig, wenn Sie dies in einem Cluster tun.

1

Ich bin sicher, ich vermisse etwas, aber können Sie nicht GetUserNameEx verwenden und in die gewünschte EXTENDEND_NAME_FORMAT übergeben? Ich glaube, NameSamCompatible sollte das gewünschte Format sein.

Sie werden zurückkommen entweder MachineName\UserName oder DomainName\UserName

Verwandte Themen