-
Добрый день!
Есть пользователь
логин Ivanov
полное имя Иванов Сергей
Мне нужно в форме в Edit выводить Полное имя.
Подскажите как сделать
В инете нашел только функции которые выводят логин, а вот как получить полное имя(которе отображается если на пуск нажать) не могу найти
Вот например
function GetCurrentUserName: string;
const
cnMaxUserNameLen = 254;
var
sUserName: string;
dwUserNameLen: DWORD;
begin
dwUserNameLen := cnMaxUserNameLen - 1;
SetLength(sUserName, cnMaxUserNameLen);
GetUserName(PChar(sUserName), dwUserNameLen);
SetLength(sUserName, dwUserNameLen);
Result := sUserName;
end;
-
GetUserNameEx
-
сделал так
procedure GetUserNameEx(NameFormat: DWORD;
lpNameBuffer: LPSTR; nSize: PULONG); stdcall;
external 'secur32.dll' Name 'GetUserNameExA';
function LoggedOnUserNameEx(fFormat: DWORD): string;
var
UserName: array[0..250] of char;
Size: DWORD;
begin
Size := 250;
GetUserNameEx(fFormat, @UserName, @Size);
Result := UserName;
end;
Потом
Edit4.Text :=LoggedOnUserNameEx(8);
и всеравно получиил лог пользователя Ivanov
-
А хотелось бы получить Иванов Сергей
-
NameDisplay = 3
Edit4.Text :=LoggedOnUserNameEx(3);
-
const
NameUnknown = 0;
NameFullyQualifiedDN = 1;
NameSamCompatible = 2;
NameDisplay = 3;
NameUniqueId = 6;
NameCanonical = 7;
NameUserPrincipal = 8;
NameCanonicalEx = 9;
NameServicePrincipal = 10;
NameDnsDomain = 12;
И выбираешь любой стиль отображения на свой вкус.
-
Почему выводит вот кое функция ㅻ㤸㈰㤲ⵡ挵昸㐭ㅡⴲ 㐹昰㐭㝥捣㤹㤲〶紷
-
> oren_yastreb (12.12.2012 15:37:06) [6]
ANSI/Unicode
-
Все разобрался
изменил тип массива
UserName: array[0..250] of Ansichar;
Спасибо всем за помощь!