AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Who's logged on?
Thema durchsuchen
Ansicht
Themen-Optionen

Who's logged on?

Ein Thema von Luckie · begonnen am 23. Jun 2007 · letzter Beitrag vom 31. Jan 2010
Antwort Antwort
Seite 6 von 11   « Erste     456 78     Letzte »    
Benutzerbild von Luckie
Luckie
Registriert seit: 29. Mai 2002
LoggedOn
Das Programm LoggedOn listet alle Benutzer auf, die an einem Computer zur Zeit angemeldet sind und über welchen Server sie authentifiziert wurden.

Inspiriert hat mich ein gleichnamiges Programm von Olli. Ich bin heute im PSDK über die Netzwerkfunktion gestolpert und habe mich erinnert, dass Olli das irgendwie anders gemacht hat, komplizierter (umständlicher?). Da wollte ich es mit eben der entsprechenden API-Funktion mal probieren.

Features:
- Scannen eines einzelnen Rechners
- Scannen einer Arbeitsgruppe / Domain
- Animation und mitlaufende Zeit während des Scans
- Informationen über Rechner (Name, IP, Betriebssystem, ...)
- Informationen über eingeloggten Benutzer (Name, Logondomain, Logonserver)
- Rechner im Netzwerk können remote runtergefahren werden
- Uptime der Remoterechner wird angezeigt (neu in Version 2.1)
Miniaturansicht angehängter Grafiken
loggedon_153.jpg  
Angehängte Dateien
Dateityp: zip loggedon_140.zip (153,5 KB, 371x aufgerufen)
Ein Teil meines Codes würde euch verunsichern.
 
uwewo

 
Delphi 2006 Professional
 
#51
  Alt 27. Jun 2007, 11:24
Zitat von Luckie:
Mit welcher Schatlfläche wählst du den Server aus? Um einen einzelenen Rechner zu scannen musst du "Scan machine" nehmen.
Genau das mache ich damit wähle ich einen Server, oder eine Workstation aus.
Bei Servern erhalte ich dann diesen Fehler.
Miniaturansicht angehängter Grafiken
browse_for_computer_256.jpg  
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#52
  Alt 27. Jun 2007, 11:36
Ich teste das hier gerade im Schulnetzwerk. Aber leider kann ich das hier nicht debuggen, weil kein Delphi installiert ist.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#53
  Alt 27. Jun 2007, 12:53
Aktuelle Version: 1.0.0.43

- Neu: Fenster lässt sich in der Größe ändern.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

 
Delphi 6 Personal
 
#54
  Alt 27. Jun 2007, 15:43
Zitat von Luckie:
- Neu: Fenster lässt sich in der Größe ändern.
Denke daran das Fenster bei dem Scalieren als letztes neu zu zeichnen und nicht nur den
Aboutbutton, sonst hat man schöne Artifakte.

Sample:
Delphi-Quellcode:
function dlgfunc(hDlg: HWND; uMsg: UINT; wParam:...
//...
    WM_SIZE:
      begin
        //...
        //...
        InvalidateRect(hDlg, nil, FALSE);
        RedrawWindow(hDlg, nil, 0, RDW_UPDATENOW); // <--<<< wir wollen ja ned so ein geflacker
      end;
//...
// Edit:
Das "PaintFlag" von MoveWindow solltest du auf False lassen da sonst gleich neu gezeichnet wied und danach der Code vortgesetzt.

// Edit II :
- dolle Dibbfehler erased
Matti
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#55
  Alt 27. Jun 2007, 17:54
Zitat von turboPASCAL:
Zitat von Luckie:
- Neu: Fenster lässt sich in der Größe ändern.
Denke daran das Fenster bei dem Scalieren als letztes neu zu zeichnen und nicht nur den
Aboutbutton, sonst hat man schöne Artifakte.
Danke fü den Tipp.

Ein InvalidateRect ist aber nur bei dem About-Button nötig. Ich habe es ausprobiert.

Aktuelle Version: 1.0.0.44
Michael
  Mit Zitat antworten Zitat
uwewo

 
Delphi 2006 Professional
 
#56
  Alt 28. Jun 2007, 08:06
Hallo,

habe nun wieder eine neue Info für Dich, in Zeile 293
 s := Format(rsFinishMachine, [UserList.Count]); ist die UserList = nil (nur bei Servern).

Vielleicht weil diese lediglich eingeschaltet werden, und kein User eingeloggt ist.

In Zeile 166 beendest Du die
procedure FillTreeview(Machine: string; UserList: TLoggedOnUserCollection); mit einem Exit; wenn
  if (UserList = nil) or (UserList.Count = 0) then Exit; danach springt er in die Zeile 293 und die UserList = nil;
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#57
  Alt 28. Jun 2007, 10:45
Oh, danke. Ich hatte nämlich ohne Erfolg versucht das zu reproduzieren. Jetzt denke ich, dass ich den Fehler beheben kann.

Aktuelle Version: 1.0.0.45

- Bug von uwewo gefixt (hoffentlich).
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#58
  Alt 28. Jun 2007, 23:19
Aktuelle Version: 1.0.0.46

- Neu: Mindestgröße des Fensters festgelegt.
- Kleinere Bugs behoben.

Ich denke, das Programm ist soweit fertig. Ichhabe es jetzt auch auf meiner Homepage veröffentlicht: http://www.michael-puff.de/Programme/LoggedOn Vielen dank noch mal, an die fleißigen Tester.
Michael
  Mit Zitat antworten Zitat
uwewo

 
Delphi 2006 Professional
 
#59
  Alt 29. Jun 2007, 08:32
Hi Luckie,

LoggedOn funktioniert jetzt soweit, habe allerdings noch ein paar Anregungen.
Wenn Kein User eingelogt(Server) dann wäre es doch trotzdem nett diesen anzuzeigen, zumindest den Rechner selbst.

Wenn ich Deinen Code richtig verstehe, ist die Variable "TotalEntries" die Anzahl der Rechner die an der Domain angemeldet sind. Richtig?

Diese Anzahl könnte man auch anzeigen, und nach erfolgreichem Scan einen Zähler-1 mitlaufen lassen.
Somit hätte man so eine Art Fortschrittsanzeige. In unserer Domain befinden sich derzeit 1232 Rechner(TotalEntries) der TreeView wird aber leider erst am Schluss angezeigt, vielleicht wäre es sinnvoll nach jedem Scan den TreeView zu aktualisieren.

Wie gesagt nur Anregungen, Du hast sicher genug anderes zu tun.

Ansonsten, Respekt gute Arbeit wie immer
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#60
  Alt 29. Jun 2007, 08:51
Zitat:
Wenn Kein User eingelogt(Server) dann wäre es doch trotzdem nett diesen anzuzeigen, zumindest den Rechner selbst.
Ist das denn nicht der Fall?

Zitat:
Diese Anzahl könnte man auch anzeigen, und nach erfolgreichem Scan einen Zähler-1 mitlaufen lassen.
Das geht nicht, weil die Funktion erst zurückkehrt, wenn sie alle Rechner gescannt hat. Das ersieht man aber auch aus dem Quellcode.
Michael
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 6 von 11   « Erste     456 78     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz