Registriert seit: 21. Mai 2003
Ort: Friedrichsdorf
59 Beiträge
Delphi 6 Professional
|
30. Mai 2003, 22:52
Eine recht einfache Möglichkeit besteht darin, auf dem fremden Rechner den angemeldeten Benutzer aus der Registry auszulesen - man braucht aber Admin-Rechte auf der fremden Maschine.
Anbei ein bisschen Code
rechneran := False;
IdIcmpClient1.Host := pcname;
IdIcmpClient1.ping;
If rechneran = True then
begin
regist.RootKey := HKEY_Local_Machine;
pcname := listbox2.Items [zaehler-1];
regist.access := KEY_EXECUTE;
fehler := regist.RegistryConnect ('\\' + pcname);
if fehler = False then
begin
regist.OpenKey('\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon', False);
Default_User := regist.Readstring ('AltDefaultUserName');
regist.CloseKey;
listbox3.Items.add (Default_user);
listbox4.Items.add (Default_user);
end
else
begin
ShowMessage(SysErrorMessage(GetLastError));
listbox3.Items.add ('Rechner nicht erreichbar');
listbox4.Items.add ('Rechner nicht erreichbar');
end;
end
procedure TStart_Form.IdIcmpClient1Reply(ASender: TComponent;
const AReplyStatus: TReplyStatus);
(************************************************* **************************)
begin
if Areplystatus.BytesReceived = 0 then
rechneran := False
else
rechneran := True;
end;
Das Absetzen des Ping-Befehls testet vorher, ob der andere Rechner angeschaltet ist.
gkaeberich
|