Avatar billede speedy Nybegynder
24. august 2005 - 07:25 Der er 14 kommentarer og
2 løsninger

SystemParametersInfo og disabling af screensaver

Hej

Jeg sidder og roder med SystemParametersInfo for at slå screensaver fra.

Jeg bruger følgende:

SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, FALSE, NULL, SPIF_UPDATEINIFILE|SPIF_SENDCHANGE)

Og på min Windows 2000 virker det fint, men på min Windows XP der nægter den kategorisk at slå den fra med den kommando.

Jeg bruger samme funktion til at fjerne wallpaper, og det virker sjovt nok både i Windows XP og 2000.

SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, strImagePath.GetBuffer(), SPIF_UPDATEINIFILE|SPIF_SENDCHANGE)

Hvordan kan det være? Og hvad gør jeg så for at få slået den screensaver fra i Windows XP?
Avatar billede jpk Nybegynder
24. august 2005 - 08:09 #1
Har du de nødvendige rettigheder på systemet?

Hvad returnerer funktionskaldet?
Hvis funktionen returnerer FALSE, kan du kalde GetLastError for at få fejlinformation.
Avatar billede speedy Nybegynder
24. august 2005 - 08:11 #2
Ja, jeg er administrator på begge PC'er, så det er ikke det.

Desuden returnerer funktionen TRUE, på begge maskiner.

Har du mulighed for at teste om det virker ved dig?
Avatar billede jpk Nybegynder
24. august 2005 - 08:37 #3
Det virker hos mig, men jeg kan dog ikke se på indstillinger for screen saver at den er deaktiveret.
Bemærk! Hvis jeg åbner indstillinger for screen saver og trykker OK, overskrives værdierne og screen saveren aktiveres igen, kan det være det du gør?
Avatar billede speedy Nybegynder
24. august 2005 - 09:00 #4
Jeg har også lige testet det, og kan se at det rent faktisk virker, men som du skriver ændrer den det ikke inde i indstillinger for screen saveren. Men det gør den på Windows 2000. Det kan jeg ikke forstå.

Jeg troede at parametrene SPIF_UPDATEINIFILE|SPIF_SENDCHANGE sørgede for både at ændre det nu, og sørge for at det blev gemt.

Problemet er jo at man ikke kan se at den har gjort det. Ved du hvordan jeg sørger for det? for det må da være muligt.
Avatar billede rbj_fp Nybegynder
24. august 2005 - 09:00 #5
På hvilken maskine er exe-filen genereret? JEg har selv oplevet problemer med XP mod 2000 når koden er kompileret på en 2000 maskine er det ikke sikkert at det virker på en XP maskine.

// RBJ_FP
Avatar billede speedy Nybegynder
24. august 2005 - 09:05 #6
Okay, det er nemlig kompileret på 2000-maskinen. Det kan jo være det er det som driller lidt. Jeg har desværre ikke mulighed for at kompilere projektet på en Windows XP maskine endnu. Det må jeg prøve senere, og se om det hjælper.

Du må gerne lægge et svar, da det jo egentlig virker, men bare ikke kan se det.
Avatar billede rbj_fp Nybegynder
24. august 2005 - 09:25 #7
Her er et svar. Bare giv point hvis det virker, ellers ikke.

P.S. skriv lige resultatet af din kompilering.

// RBJ_FP
Avatar billede jpk Nybegynder
24. august 2005 - 10:19 #8
Jeg compilerer på WinXP, så det har ikke noget at gøre med det...
Avatar billede jpk Nybegynder
24. august 2005 - 10:21 #9
Hvordan ser du ændringerne i W2K, bliver screensaver sat til [none]/[ingen]?
Avatar billede Slettet bruger
24. august 2005 - 12:33 #10
rbj_fp din n00b... det er da ikke et svar, men en kommentar..... du er bare så lamer! p0wned!
Avatar billede rbj_fp Nybegynder
24. august 2005 - 12:51 #11
jpk <- Det beviser jo netop at der er forskel på om koden bliver kompileret på en Windows 2000 eller en Windows XP maskine...

Ved at din kode(kompileret på en Windows XP) godt kan ændre screen-saveren, mens Speedy's kode(kompileret på en Windows 2000) ikke kan ændre screen-saveren på en windows XP maskine.
Avatar billede Slettet bruger
24. august 2005 - 12:57 #12
... I'd still like a mokey, if any1 cares....
Avatar billede jpk Nybegynder
24. august 2005 - 13:06 #13
rbj_fp >> hvis du læser de tidligere indlæg kan du se at det faktisk virker ens hos mig og speedy!
Screensaveren BLIVER faktisk slået fra under XP, det kan bare ikke ses i indstillinger. Det er tilfældet både med kode kompileret under W2K og XP...
Avatar billede speedy Nybegynder
26. august 2005 - 18:22 #14
jpk>>Præcis, feltet bliver sat til (none) og timeout-feltet bliver disabled.

Men siden du har kompileret det på XP, så er det jo nok ikke det der er problemet.

Synes godt nok det er lidt mærkeligt...Men det må man jo åbenbart leve med.

jpk>> Læg lige et svar også.
Avatar billede jpk Nybegynder
27. august 2005 - 12:34 #15
Hvis det skal kunne ses i indstillinger, at screensaver er disabled, kan de måske sætte den valgte saver til 'none'?
Avatar billede speedy Nybegynder
18. september 2006 - 13:10 #16
Glemte alt om det igen, må hellere lukke spørgsmålet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester