• 0

C# Screen saver?


Question

Recommended Posts

  • 0

Yeah, your right, i cant get the name, but i checked and windows cant either, i get "Flying_Windows" in the display control panel list

It is because the screen saver has been made wrong, instead of the name of the screensaver being resource 1, it's resource 100

So, i recommend putting in some fail safe code, e.g. check for the name of the screensaver, if the string returned is nothing, then display the name of the screensaver as the file name with the extension cut off

  • 0
Ok, im done, i have code that can set and retrieve the time-out, i was going to post it earlier, but my browser crashed and i decided to change some stuff.

Declarations:

? ?<DllImport("user32", CharSet:=CharSet.Auto)> _
 ? ?Private Shared Function SystemParametersInfo(ByVal uAction As Integer, ByVal uParam As Integer, ByRef lpvParam As Integer, ByVal fuWinIni As Integer) As Integer
 ? ?End Function

 ? ?Private Const SPI_GETSCREENSAVETIMEOUT = 14
 ? ?Private Const SPI_SETSCREENSAVETIMEOUT = 15
 ? ?Private Const SPIF_UPDATEINIFILE = &H1
 ? ?Private Const SPIF_SENDWININICHANGE = &H2

Code:

? ?Public Function GetScreenSaverTimeOut() As Integer
 ? ? ? ?Dim lRet As Integer
 ? ? ? ?Dim lSeconds As Integer

 ? ? ? ?lRet = SystemParametersInfo(SPI_GETSCREENSAVETIMEOUT, 0, lSeconds, 0)
 ? ? ? ?If lRet > 0 Then
 ? ? ? ? ? ?GetScreenSaverTimeOut = lSeconds / 60
 ? ? ? ?Else
 ? ? ? ? ? ?GetScreenSaverTimeOut = -1
 ? ? ? ?End If
 ? ?End Function

 ? ?Public Function SetScreenSaverTimeOut(ByVal NewValueInMinutes As Integer) As Boolean
 ? ? ? ?Dim lRet As Integer
 ? ? ? ?Dim lSeconds As Integer
 ? ? ? ?lSeconds = NewValueInMinutes * 60
 ? ? ? ?lRet = SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT, lSeconds, Nothing, SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE)
 ? ? ? ?SetScreenSaverTimeOut = lRet <> 0
 ? ?End Function

It's pretty much self explanatory.

Also, yyy, if you want to see the similarities between vb.net and c#, i recommend you get a copy of .NET Reflector, it's a fully working Disassembler and De-compiler for .net, it allows you to choose from multiple languages, e.g. De-compile a vb app into c#, or vice-versa, it's really good.

Also 2, since you and weenur have been so good, and since im feeling generous, pm me if you:Dant a gmail account (I'm feeling generous because i got 6 invites today :D )

Edit: I'll need your names and e-mail address's to send the invites.

Can you convert it to c# ? I can't convert it. I get a lot of error messages.

  • 0

Almost all. I tried this:

[DllImport("user32", CharSet=CharSet.Auto)]
 ?private static int SystemParametersInfo(int uAction, int uParam, ref int lpvParam, int fuWinIni)
 ?{
 ?}
private const void SPI_GETSCREENSAVETIMEOUT = 14;
 ?private const void SPI_SETSCREENSAVETIMEOUT = 15;
 ?private const void SPIF_UPDATEINIFILE = 1;
 ?private const void SPIF_SENDWININICHANGE = 2;

int lRet;
 ?	int lSeconds;
 ?	lSeconds = NewValueInMinutes * 60;
 ?	lRet = SystemParametersInfo(SPI_SETSCREENSAVETIMEOUT, lSeconds, null, SPIF_UPDATEINIFILE + SPIF_SENDWININICHANGE);
 ?	SetScreenSaverTimeOut = lRet != 0;

But it tells me that there's a poblem with the void. So I replaced it with int. Then it says that this : [DllImport("user32", CharSet=CharSet.Auto)] line is wrong and many others. I just don't know how to write it in c#.

PS - it is sad to know that you won't be here for a l:(g time :(

  • 0

Yeah, I'm sad about that to (damn financial situation (and family problems) i can afford broadband, but i get told i cant afford it, so im stuck on pre-paid dial-up)

Also, since i don't know much about c#, i realised i cant help you with that, your probably going to have to wait until weenur comes back and reads the thread (looks like i cant help you with much more now)

So, ill be back in about 2 or 3 weeks (maybe more :angry: )

  • 0

:no: :no: :no: It isn't what I ment:

The information in this article applies to:

Microsoft Windows 2000 Server

Microsoft Windows 2000 Advanced Server

Microsoft Windows 2000 Professional

Microsoft Windows 2000 Datacenter Server

That page relates to non Winodws XP versions. These versions doesn't even have the Welcome Screen. I did it once and it worked. I think I just need to use an API but how? I believe that runnung a screen saver using an API will do it.

  • 0

And one more thing - can I lauch a screensaver's settings menu with Process.Start() ? How? I tried Process.Start("c:\window\system32\ss3d.scr" + "/c") but it just showed it in full mode :( Can I make it with process? I want my program to do something when the process exites so that's why I'm asking.

  • 0
And one more thing - can I lauch a screensaver's settings menu with Process.Start() ? How? I tried Process.Start("c:\window\system32\ss3d.scr" + "/c") but it just showed it in full mode :( Can I make it with process? I want my program to do something when the process exites so that's why I'm asking.

I found out how to do it :laugh: Now - Does somebody know how to activate a screensaver using an API? In c#?

  • 0
Oh my Muh!!

I am wrong in the begining..

it looks as I had better study English hard

you can use this

PostMessage(WM_SYSCOMMAND,SC_SCREENSAVE,0);

to act current ScreenSaver

I think you want to get current Screen picture at the begining.

faint~

this is the code;

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Int32, ByVal wMsg As Int32, ByVal wParam As Int32, ByVal lParam As Int32) As Int32
 ? ?Private Const HWND_BROADCAST = &HFFFF&
 ? ?Private Const WM_SYSCOMMAND = &H112
 ? ?Private Const SC_SCREENSAVE = &HF140&

 ? ?Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 ? ? ? ?SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_SCREENSAVE, 0)
 ? ?End Sub

I use VB more  than C#.

So this code is in VB style.


T:laugh:korls :laugh:

  • 0

congrats on getting it working, it looks like a cool tile, and although you weren't going to do it on longhorn, it think it would work very well (and be popular)

Also, thanks for putting my name in your program, i think that is one of the first programs with my name in it (other than my own)

  • 0
congrats on getting it working, it looks like a cool tile, and although you weren't going to do it on longhorn, it think it would work very well (and be popular)

Also, thanks for putting my name in your program, i think that is one of the first programs with my name in it (other than my own)

Hi The_Decryptor :laugh: :happy: I missed you :D As you can see I didn't get much help without you :laugh: But I managed to find out the solutions myself. So far I got around 500 downloads but I hopee that after releasing the 2nd version of it I'll get more.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Also, Guru3D.com always has some pros and experts lurking in the comments.
    • If anyone is wondering, it's 30fps at 4K
    • This 4K webcam from Acer is now only $59.99 by Taras Buria Those looking for an affordable, high-resolution webcam from a reputable manufacturer can check out the latest deal from Acer, which puts its 4K webcam at a solid price. Thanks to a 14% discount, you can buy this all-metal 4K webcam from Acer for just $59.99. Despite the affordable price tag, the webcam has a pretty large 1/2" CMOS sensor manufactured by Sony. Apart from its size, it supports additional conveniences, such as high dynamic range and phase-detection autofocus (PDAF). Plus, the camera ensures you do not have to buy additional audio equipment, as it comes with two built-in high-sensitivity microphones, a built-in background noise filter, and the ability to pick up your voice from up to 2.5 meters away. Acer is not cheaping out on materials, and the webcam is enclosed in a more premium metal case, which is also good at heat dissipation (high-resolution cameras can get quite hot). And to make sure no one is peeping at you when the camera is in use, there is a magnetic cover also made of metal. Additional conveniences include an LED status indicator and a built-in mount that lets you place a camera on a tripod. Acer 4K Webcam for PC/Mac with All-Metal Unibody Sculpted - $59.99 | 14% off Good to know This Amazon deal is U.S.-specific and not available in other regions unless specified. We only use first-party seller links (at the time of article publishing); ensure that you purchase from a first-party seller link only. Check out Today's Deals on Amazon | or our recent tech deals. Become a Prime member (for Students or SNAP) via Neowin Get Prime Access - Prime for half price (for qualifying Medicaid, EBT, SNAP) Subscribe to Prime Video, Audible Plus, Music Unlimited, or Kindle Unlimited via Neowin As an Amazon Associate, we earn from qualifying purchases.
  • Recent Achievements

    • Conversation Starter
      NovaEdgeX earned a badge
      Conversation Starter
    • One Year In
      Console General earned a badge
      One Year In
    • One Year In
      Twozo Technologies earned a badge
      One Year In
    • One Month Later
      Twozo Technologies earned a badge
      One Month Later
    • Week One Done
      Twozo Technologies earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      519
    2. 2
      +Edouard
      185
    3. 3
      PsYcHoKiLLa
      107
    4. 4
      Steven P.
      87
    5. 5
      ATLien_0
      67
  • Tell a friend

    Love Neowin? Tell a friend!