Autor Beitrag
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 07.11.05 20:36 
Angenommen ich habe ein Programm, in dem eine längere Berechnung (o.ä.) ausgeführt wird, bei der schon mal der Bildschirmschoner anspringt, wie krieg ich den dann wieder weg?

Ich will ihn jetzt nicht generell deaktivieren, sondern einfach nur abstellen, wie wenn der User die Maus bewegt.
Ich hab das Problem jetzt nicht direkt, sondern es interessiert mich einfach.

Wie geht das?

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mo 07.11.05 20:43 
hab gegoogelt, keine Gewäh:

Bildschirmschoner deaktivieren:
ausblenden Delphi-Quelltext
1:
SystemParametersInfo (SPI_SETSCREENSAVEACTIVE, 0, @NULL, SPIF_UPDATEINIFILE);					

Bildschirmschoner aktivieren:
ausblenden Delphi-Quelltext
1:
SystemParametersInfo (SPI_SETSCREENSAVEACTIVE, 1, @NULL, SPIF_UPDATEINIFILE);					
jakobwenzel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 07.11.05 20:47 
Geht nich. :cry:

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Amateur
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 777

(Win98, WinMe) WinXP Prof
D3 Prof, D6 Pers, D2k5 Pers., Turbo C++ Explorer
BeitragVerfasst: Mo 07.11.05 20:49 
kann man nicht per api den mauszeiger verschieben oder nen tastendruck simulieren bzw. die message für nen tastendruck schicken? dann das ganze nur wenn der schoner aktiviert ist oder in nem bestimmten zeitintervall. ist sicher nicht die sauberste aber ne einfache lösung wenn man sich mit api auskennt(ich tus nicht)

_________________
"Kein dummes Gerede. Kein Rumrätseln. Denkt an nichts anderes mehr, nur noch an das, was vor euch liegt. Das ist die wahre Herausforderung. Ihr müßt euch vor euch selbst schützen, Leute." (Rennes in "Cube")
Beiträge: >700
jakobwenzel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 07.11.05 20:53 
@Amateur: Das geht sicherlich, ich weiß nur nicht wie man das macht. Die Frage ist halt, ob Windows das als Grund annimmt, den Bildschiormschoner abzuschalten.

@Tilman: Ich hab auch mal gegoogelt, und ich glaub, dass das die Befehle zum gänzlichen Deaktivieren des Bildschirmschoners sind, also genau das, was ich nicht will.

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mo 07.11.05 21:02 
user profile iconjakobwenzel hat folgendes geschrieben:
@Tilman: Ich hab auch mal gegoogelt, und ich glaub, dass das die Befehle zum gänzlichen Deaktivieren des Bildschirmschoners sind, also genau das, was ich nicht will.


Naja stimmt wohl, aber ich hab keine Ahnung wie es sonst geht

@Jakobwezel: es funktuioniert, habs gerade ausprobiert. Jedenfalls unter WinXP.

@Amateur: setCursorPos reicht jedenfalls nicht, habs gerade getestet
jakobwenzel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 07.11.05 21:05 
@Tilman: Ich hab in einem Timer versucht alle 2 Sekunden den Bildschirmschoner an- / auszuschalten. Bei mir gings nicht. (Auch XP)

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mo 07.11.05 21:20 
user profile iconjakobwenzel hat folgendes geschrieben:
@Tilman: Ich hab in einem Timer versucht alle 2 Sekunden den Bildschirmschoner an- / auszuschalten. Bei mir gings nicht. (Auch XP)


Wieso willst du alle 2 Sekunden den Schoner abstellen? Realitätsnaher wäre es du
- Deaktivierst den Schoner
- Rechnest (z.B. 3 Minuten)
- Schaltest den Schoner wieder ein

dann müsste der Schoner wenn er z.B. auf 1 Minute steht ca. eine Minute nach beendeter Berechnung wieder anspringen. Oder hab ich dein problem ganz falsch verstanden?
jakobwenzel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 07.11.05 21:22 
Das war ja nur ein kleines Testprogramm, weil ich nicht so lang warten wollte. :oops:

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mo 07.11.05 21:29 
user profile iconjakobwenzel hat folgendes geschrieben:
Das war ja nur ein kleines Testprogramm, weil ich nicht so lang warten wollte. :oops:


Wenn du den Schoner alle 2 sekunden an und ausstellst, dann ist er (fast) immer aktiviert. Dann ist es doch normal das er anspringt, oder?
jakobwenzel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 07.11.05 21:31 
Es ist aber überhaupt nicht passiert. :cry:

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
duffbartman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Mi 19.07.06 13:51 
sorry wenn ich das thema wieder aufgreife, aber was muss ich eigentlich veranstallten, um die schoner für immer zu deaktivieren?? ich will das mein bildschirmschoner auch nach einem neustart deaktiviertr bleibt!!!
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Mi 19.07.06 14:00 
Rechtsklick auf Monitor -> Eigenschaften -> Bildschirmschoner -> Bilschirmschoner: kein
duffbartman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Mi 19.07.06 16:47 
user profile iconF34r0fTh3D4rk hat folgendes geschrieben:
Rechtsklick auf Monitor -> Eigenschaften -> Bildschirmschoner -> Bilschirmschoner: kein


und das ganze jetzt bitte so, dass ich nur auf einen knopf im delphi programm klicken muss :)
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Mi 19.07.06 17:00 
such mal in der registry
duffbartman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Mi 19.07.06 20:02 
du bist wohl ein typ der wenigen worte was???
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Mi 19.07.06 20:20 
hmm.. IIRC Setzt man auf die Art ob ein Bildschirmschoner läuft oder nicht. Sag Windows, DASS er läuft (mit der 1) und hoff, dass er nicht anspringt.)
Stop Falsch: Das war SPI_SETSCREENSAVERRUNNING(oder so). Versuchs damit.

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: Mi 19.07.06 21:19 
du könntest es auch unelegant machen mit "SetCurser(x,y)". So glaub ich heißt der Befehl, mit dem man den Mauszeiger auf eine bestimmte Position setzen kann. du kannst mit Mouse.x und Mouse.y + 1 den Zeiger ein bisschen nach rechts verschieben, oder sonstwohin.
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Mi 19.07.06 21:34 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
Procedure TForm1.Timer1Timer(Sender: TObject);
Begin
    Case x Of
        true: SetCursorPos(Mouse.CursorPos.x + 1, Mouse.CursorPos.y + 1);
        false: SetCursorPos(Mouse.CursorPos.x - 1, Mouse.CursorPos.y - 1);
    End;
    x := Not x;
End;

x:boolean.
Funktioniert leider nicht. Der Bildschirmschoner sprang bei mir trotzdem an. Den Timer hatte ich auf 1 Sekunde, Die maus HAT sich bewegt... (Windoof XP Home)

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.