U-- °LoneWolf° Geschrieben 21. März 2005 Geschrieben 21. März 2005 Hi zusammen, gibt es die Mglichkeit mit java auf das sperren bzw. entsperren von Windows zu reagieren? Achja nochwas kann man Java Anwendungen als Tray Laufen lassen ? schon mal danke im Vorraus. Zitieren
perdian Geschrieben 21. März 2005 Geschrieben 21. März 2005 gibt es die Mglichkeit mit java auf das sperren bzw. entsperren von Windows zu reagieren?Ja und Nein Also ausführlicher: Mit Java "Bordmitteln" gibt es keine Möglichkeit darauf zu reagieren. Dafür ist die Aufgabe zu plattformorientiert. Ein Logout unter Linux verläuft komplett anders als unter Windows, und was machst du, wenn Java auf einem OS läuft, wo es überhaupt keine Mehrbenutzerumgebung gibt? Was du allerdings machen kannst ist das ganze über einen JNI Aufruf zu erledigen. Du klinkst dich in die Windows API ein, und rufst dann von der C-Seite aus, eine Methode in einer Java-Klasse auf, die das Handling des Logout übernimmt. Also so etwas in der Art: public class WindowsLogoutHandler { /** * Diese Methode einmal aufrufen, um den Listener bei * Windows zu registrieren. */ public static native void registerWindowsEventListener(); /** * Diese Methode vom JNI-Part aus ansprechen */ public static void userLoggedOut(String username) { // Hier jetzt die Implementierung rein } } Achja nochwas kann man Java Anwendungen als Tray Laufen lassen ?Gleiche Antwort wie oben: Möglich ja, aber nur über JNI Bridge. Aber da gibt's schon fertige Packages für: http://www.google.de/search?hl=de&q=java+tray http://jeans.studentenweb.org/java/trayicon/trayicon.html Zitieren
U-- °LoneWolf° Geschrieben 21. März 2005 Autor Geschrieben 21. März 2005 schade hatte gehoft es gäbe da eine halbwegs allgemeine lösung aber schon mal thx Das Problem ist halt das ich gerne eine Zeiterfassung basteln würde die durch das speren und entsperen schon mal einige zeiten vogibt. Hat vielleicht jemand ne idee wie man das anders lösen kann ? Zitieren
geloescht_Newlukai Geschrieben 21. März 2005 Geschrieben 21. März 2005 Ich weiß ja nicht, was Du vorhast. Aber JSL erlaubt es, Dein Programm als Windows-Dienst laufen zu lassen. So kann Dein Proggi auch laufen, wenn mal kein Nutzer angemeldet ist. EDIT: Hmm... nee. JSL hilft da wohl auch nicht viel. Zitieren
HuDeanY Geschrieben 21. März 2005 Geschrieben 21. März 2005 schade hatte gehoft es gäbe da eine halbwegs allgemeine lösung aber schon mal thx Das Problem ist halt das ich gerne eine Zeiterfassung basteln würde die durch das speren und entsperen schon mal einige zeiten vogibt. Hat vielleicht jemand ne idee wie man das anders lösen kann ? Noch ne möglichkeit wäre dann natürlich das ganze unter C# zu machen... damit gibst du dann allerdings alle plattformunabhängigkeit auf die Java hat (brauchst du scheinbar aber eh nicht) Vorteile: gleiche Syntax und struktur, bei voller nutzbarkeit aller Windows und Microsoft features Zitieren
perdian Geschrieben 21. März 2005 Geschrieben 21. März 2005 Ich weiß ja nicht, was Du vorhast.Ich glaub ich schon Ich denke der OP möchte ein Zeiterfassungs-Programm im Hintergrund auf dem Client-Rechner laufen lassen. Wenn jetzt Mitarbeiter X seinen Desktop sperrt heisst das für das Programm "Der macht jetzt Pause". @LoneWulf: Hab ich das soweit richtig verstanden? Wenn dem so ist, und dein Programm ein reines Java-Programm ist, dann hast du keine andere Möglichkeit, als die, die ich oben vorgeschlagen habe. Du willst schließlich vom System etwas mitbekommen nämlich "Rechner gesperrt". Und dann musst du dich da auch direkt beim System einklinken. Eine reine Java Lösung wird es dafür nicht geben (eben weil du auf die Windows API zugreifen musst) also wenn du es so umsetzen musst, dann fange lieber an dich mit JNI vertraut zu machen - so schwierig ist das auch nicht. Eine weitere Möglichkeit wäre dann natürlich tatsächlich, das ganze nicht in Java umzusetzen, sondern in einer Sprache, die mit Windows und seinen Eigenheiten besser umgehen kann - z.B. C# (*würg*, dass ich das mal vorschlagen würde...). Zitieren
HuDeanY Geschrieben 21. März 2005 Geschrieben 21. März 2005 Ich glaub ich schon C# (*würg*, dass ich das mal vorschlagen würde...). Ach was sooo schlimm ist das doch auch wieder ned ... wenn auch proprietär... aber das kann was und die meisten prinzipien zw thread prozess exception etc sind die gleichen (freu) Zitieren
geloescht_Newlukai Geschrieben 21. März 2005 Geschrieben 21. März 2005 Ich denk' mal, die AUfgabenstellung hat ihren Sinn. Mir stellen sich nämlich die Nackenhaare, wenn Zeiterfassung über das Sperren des Rechners laufen würde. Was mache ich dann nämlich, wenn ich zu einem Meeting gehe? Zitieren
perdian Geschrieben 21. März 2005 Geschrieben 21. März 2005 Mir stellen sich nämlich die Nackenhaare, wenn Zeiterfassung über das Sperren des Rechners laufen würde. Was mache ich dann nämlich, wenn ich zu einem Meeting gehe?Naja vom Grundprinzip her ist das schon okay - der Rechner loggt die Zeiten, wo du offline bist und präsentiert dir hinterher eine Liste, in der du dann auswählen musst, was beispielsweise zwischen 10:00 und 10:15 passiert ist. Als Auswahl steht dann sowas wie { Meeting, Toilettenpause, Raucherpause, ... } In wieweit sowas der Arbeitsmoral dient ist noch ein ganz anderer Punkt... Wenn ich über jede Minute meines Arbeitstages genau buchführen müsste, dann leidet mein Zugehörigkeitsgefühl und meine Solidarität zu meiner Firma da enorm drunter. Zitieren
U-- °LoneWolf° Geschrieben 21. März 2005 Autor Geschrieben 21. März 2005 Nein das ganze soll ja nur schonmal diverse anhaltspunkte angeben diese können ja beliebig verändert werden. Das ist halt für mich persönlich gedacht. Zum einen zur Übung und zum anderen damit ich mal anfange richtig zu dokumentieren. Soll halt ein kleines Documentations Tool werden für notizen usw. Könnte man den short keys vergeben so wie winamp das macht? sozusagen start und stop einer aktivität? Zitieren
perdian Geschrieben 21. März 2005 Geschrieben 21. März 2005 könnte man den short keys vergeben so wie winamp das macht? sozusagen start und stop einer aktivität?Hä? Bitte drücke dich mal etwas deutlicher aus, und erkläre mir, was du mit diesem Satz da oben sagen wolltest Zitieren
U-- °LoneWolf° Geschrieben 21. März 2005 Autor Geschrieben 21. März 2005 Bei Win Amp diesem tollen Media player. GIbt es sogenante short Keys (Kurzwahl tasten) über die man das Programm während man mit einem anderem Programm arbeitet Steuern kann. Das wäre doch eine altenative oder ? Es geht halt darum Das die Start- und Endzeiten ohne Großen aufwand erfasst werden. Zitieren
perdian Geschrieben 21. März 2005 Geschrieben 21. März 2005 Bei Win Amp diesem tollen Media player. GIbt es sogenante short Keys (Kurzwahl tasten) über die man das Programm während man mit einem anderem Programm arbeitet Steuern kann. Das wäre doch eine altenative oder ? Es geht halt darum Das die Start- und Endzeiten ohne Großen aufwand erfasst werden.Okay, jetzt hab ich's verstanden. Möglich auf jeden Fall - aber unter Java auch wieder nur mit JNI-Bridge. Du siehst, du kommst also nicht drumrum Zitieren
U-- °LoneWolf° Geschrieben 21. März 2005 Autor Geschrieben 21. März 2005 nagut dann werde ioch mir das mal zu gemüte ziehen. Das Problem ist das ich noch nicht wirklich viel mit java gemacht habe. Aber na das wird schon funzen nochmal THX @all Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.