Autor Beitrag
Jojojoxx
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: Sa 25.06.05 13:11 
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:

ausblenden 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 user profile iconChristian S.: Code- durch Delphi-Tags ersetzt.
hallo
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 450

WIN XP, SuSE 9.3
D3 Prof, D6 Pers, 2005 Pers
BeitragVerfasst: Sa 25.06.05 13:42 
Ein bisschen mehr Code wäre mal nicht schlecht...

_________________
Der beste je Programmierte Trojaner: Windows XP
Wäre es nicht adequat, den Usus heterogener Termini zu minimieren?
Jojojoxx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Sa 25.06.05 15:16 
user profile iconJojojoxx 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: 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
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Sa 25.06.05 18:12 
Es heißt ja eigentlich auch nicht Service sonder Dienst ;). Finden tust du hier etwas darüber.
Jojojoxx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Sa 25.06.05 18:27 
In dem du Messages verschickst.
Jojojoxx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: 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
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Sa 25.06.05 18:39 
ICh habe es auf Anhieb gefunden ;). Wenn du unter Suche in: Delphi-Forum, Delphi-Library MESSAGE SENDEN suchst findest du z.B. das hier.
Jojojoxx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 386



BeitragVerfasst: Sa 25.06.05 18:58 
Ich habe mir gerade dieses SharedMemory-Projekt heruntergeladen!
Aber jetzt verstehe ich gar nix mehr :(

mfg

Jojo
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Sa 25.06.05 19:03 
Eröffne dazu am besten ein neues Thema ;). Das passt hier langsam nicht mehr unter der Überschrift.