Einzelnen Beitrag anzeigen

Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Windows Sessions ermitteln mit WTSEnumerateSessions

  Alt 10. Nov 2011, 14:14
Packed ist (aus Erfahrung) im Zusammenhang mit der WinAPI (oder anderen API's) immer falsch.

Außerdem würde ich mir an deiner Stelle nicht so viel Mühe machen. Es gibt doch z.B. die Jedi-WinAPI. Die kannst du z.B. von hier per svn auschecken und hast damit alle Funktionen da.

Damit funktioniert auch dieser Code:
Delphi-Quellcode:
procedure TForm3.Button1Click(Sender: TObject);
var
  info : pWtsSessionInfo;
  cnt,
  idx : Cardinal;
begin
  if WTSEnumerateSessions(WTS_CURRENT_SERVER_HANDLE, 0, 1, info, cnt) then
  begin
    for idx := 0 to cnt - 1 do
    begin
      Memo1.Lines.Add(IntToStr(info^.SessionId) + ' - ' + info^.pWinStationName);
      Inc(info);
    end;

    WTSFreeMemory(info);
  end;
end;
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat