<!--
XP에서 현재 로그온 사용자는
RootKey := HKEY_CURRENT_USER;
OpenKey('Software\Microsoft\Windows\CurrentVersion\Explorer', False);
user := ReadString('Logon User Name');
로 잘 되는데......
Windws7에서는 위의 Key도 없지만 OpenKey로 읽히지도 않아 OpenKeyReadOnly로 바꾸어 아래 Key를
읽었지만 Registery에는 있는데 읽혀지지않네요.
RootKey := HKEY_CURRENT_USER;
OpenKeyReadOnly('Volatile Environment');
user := ReadString('USERNAME');
아시는 고수님들, 도움 부탁드립니다.
--!>
API 가 존재합니다.
아래 함수를 사용해 보세요.
function _GetLogonUserName : String;
var
NSize: DWORD;
UserName: string;
begin
NSize := 25;
SetLength(UserName,NSize);
if GetUserName(PChar(UserName), NSize) then
result := UserName;
end;
ex)
procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := _GetLogonUserName;
end;