Вопрос
Какой функцией можно «вытащить» имя пользователя, который в данный момент работает на данном компьюторе?
Ответ
Как узнать имя, под которым зарегистрировался пользователь а системе Win98 ?
1. //---------------------------
В uses добавить модуль Registry.
procedure TFirst.FormCreate(Sender: TObject);
var Reg: TRegistry; begin Reg := TRegistry.Create;
try Reg.RootKey := HKEY_LOCAL_MACHINE;
Reg.OpenKey('\System\CurrentControlSet\Control\ ComputerName\ComputerName',False);
showmessage('Компьютер имеет имя: '+Reg.ReadString('ComputerName'));
Reg.OpenKey('\Network\logon',False);
showmessage('Вы вошли под именем:
'+Reg.ReadString('UserName'));
finally Reg.Free;
inherited;
end;
end;
2. //-----------------------------
Procedure GetUserInfo(var CompName, UserName: String);
i: Cardinal; Begin i:=sizeof(Tmp);
GetComputerName(@Tmp, i);
i:=1;
while Tmp[i]<>#0 do Inc(i);
CompName:=String(Tmp);
SetLength(CompName,i-1);
i:=sizeof(Tmp);
GetUserName(@Tmp, i);
i:=1;
while Tmp[i]<>#0 do Inc(i);
UserName:=String(Tmp);
SetLength(UserName,i-1);
End;
Из конференции Expert_FAQ
Copyright 2000-2004 Сообщество Чайников
Контактная информация