How to install screensaver programmatically?

前端 未结 2 1909
鱼传尺愫
鱼传尺愫 2021-01-14 08:35

How to install (register) screensaver programmatically?

相关标签:
2条回答
  • 2021-01-14 08:40

    AFAIk there are two ways:

    1. Permanent registration by copying it to a location that windows searches, such as System32. But don't hardcode "C:\Windows\System32". You need to query the system to find out where the system directory is.
    2. Calling the Install action on the .scr file, which results in temporary activation. But the screensaver will disappear once another has been selected and the dialog restarted.

    But this is from Win95 times, so it's possibly outdated.


    I see three ways to call install:

    1. ShellExecute(Ex) using the install verb
    2. Call rundll32.exe desk.cpl,InstallScreenSaver %l
    3. Load desk.cpl as library(LoadLibrary or by declaring an import for InstallScreenSaver) and then call the InstallScreenSaver method with your own path as parameter.
    0 讨论(0)
  • 2021-01-14 08:54

    A walkthrough here -

    http://www.desktopmanagementsoftware.org/creating-an-msi-package-for-a-screensaver

    0 讨论(0)
提交回复
热议问题