Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Timer wird nach Benutzer wechseln nicht ausgelöst.
Jojojoxx - Sa 25.06.05 13:11
Titel: Timer wird nach Benutzer wechseln nicht ausgelöst.
Hallo!
Ich habe folgendes Problem:
Wenn ich bei meiner Anwendung unter WIndows XP Benutzer wechseln mache, so läuft der Timer in meinem Programm zwar weiter, jedoch löst er den Code dahinter nicht aus!? Bleibe ich in der normalen Windows-Umgebung, dann funktioniert alles ganz normal!!!
Was mich jetzt verwundert ist, das ein zweiter Timer ganz normal weiterläuft und ohne Probleme funktioniert!?
Hier ist mal der Code vom fehlerhaften Timer:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm1.Timer2Timer(Sender: TObject); begin TimerStat:=TimerStat + 1; if TimerStat=ShutPC then begin ShellExecute(Application.Handle, 'open', PChar(Zeile3), '-s -t 01', nil, SW_SHOWNORMAL); Timer2.Enabled:=False; end; end; |
Habt ihr dazu eine Idee???
Danke euch!
mfg
Jojo
Moderiert von
Christian S.: Code- durch Delphi-Tags ersetzt.
hallo - Sa 25.06.05 13:42
Ein bisschen mehr Code wäre mal nicht schlecht...
Jojojoxx - Sa 25.06.05 13:50
Wüsste nicht, was ihr noch an Code gebrauchen könntet...
Es geht ja nur um den Timer. Die Variable ShutPC ist eine vom Benutzer eingegebene Zahl (in Sek.),
die mit der Timer-Variable "TimerStat" abgeglichen wird, der Timer läuft mit einem Intervall von 1 sek. und setzt so die Variable
TimerStat immer nach 1 sek. um 1 höher. Und sobald die Variablen den gleichen Wert haben, soll der Code in der IF-Anweisung ausgeführt werden...
mfg
Jojo
Heiko - Sa 25.06.05 15:16
Jojojoxx hat folgendes geschrieben: |
Was mich jetzt verwundert ist, das ein zweiter Timer ganz normal weiterläuft und ohne Probleme funktioniert!? |
Es funktioniert also der Code im Timer?
Das dein Programm nicht funktioniert könnte auch daran liegen, das XP das starten eines Programmes bei einem abgemeldeten User nicht mehr erlaubt aus Sicherheitsgründen.
Jojojoxx - Sa 25.06.05 15:27
@Heiko: Das kann natürlich sein.
Ich werde mal versuche in einem kleinen Programm den Code ausführen zu lassen, mal sehen, ob das klappt.
Ich melde mich dann gleich nochmal...
mfg
Jojo
Jojojoxx - Sa 25.06.05 15:44
Hi!
Ja, es liegt an Windows, sobald der Benutzer gewechselt wurde, lässt sich nix mehr ausführen...
Könnte man denn nicht das Programm als Service laufen lassen, dann sollte das doch möglich sein, oder???
mfg
Jojo
Heiko - Sa 25.06.05 15:57
Dann müsste es allerdings möglich sein, da die Programme ja auch laufen, wenn gerade keiner angemeldet ist.
Jojojoxx - Sa 25.06.05 16:45
Wie kann ich denn das Proggi in einen Service verwandeln???
Habe leider keine Ahnung, wie das geht :(
mfg
Jojo
Jojojoxx - Sa 25.06.05 18:15
Danke dir!
Werde mich gleich mal ein bisschen damit befassen!
edit: Ich sehe gerade, dass dann ja ein "neues Programm" gemacht wird. Wie kann ich die Programme denn dann "kooperieren" lassen, sodass ich z.B. Variablen unter den beiden Programmen vergleichen kann??
mfg
Jojo
Heiko - Sa 25.06.05 18:27
In dem du Messages verschickst.
Jojojoxx - Sa 25.06.05 18:35
Hi!
Hab gerade mal im Forum gesucht, aber nix gefunden!
Wie geh ich denn an sowas ran?? Wie verschicke ich diese Messages??
Danke für deine Hilfe!
mfg
Jojo
Jojojoxx - Sa 25.06.05 18:58
Ich habe mir gerade dieses SharedMemory-Projekt heruntergeladen!
Aber jetzt verstehe ich gar nix mehr :(
mfg
Jojo
Heiko - Sa 25.06.05 19:03
Eröffne dazu am besten ein neues Thema ;). Das passt hier langsam nicht mehr unter der Überschrift.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!