System32 中还需要安装屏幕保护程序吗?
回到我的 Delphi 时代,我编写了几个屏幕保护程序 - 每个都是一个单独的可执行文件,被放入 System32 文件夹中,Windows XP 显示控制面板可以在其中看到它并使其可用。一切都好。
我现在正在用 C# 编写一个明显更复杂的屏幕保护程序,它必然分布在多个程序集中(它使用插件模型:将所有程序集合并到单个可执行文件中不是一个选项)。
将所有文件转储到 System32 中似乎不太整洁 - 更不用说它根本无法在 64 位系统上工作。
还有其他方法可以在Windows系统上安装屏幕保护程序吗?
如果有必要,我愿意依赖Vista/Win7。
到目前为止,我提出的唯一建议是在 Program Files
下正常安装大部分屏幕保护程序,并将触发器/启动器放入 System32。
Back in my Delphi days, I wrote several screensavers - each was a single executable that was dropped into the System32
folder, where the Windows XP Display control panel saw it and made it available. All good.
I'm now writing a significantly more complex screensaver in C# that is necessarily spread across multiple assemblies (it's using a plug-in model: merging all the assemblies into a single executable isn't an option).
Dumping all the files into System32
doesn't seem to be very tidy - not to mention that it simply won't work on a 64-bit system.
Is there any other way to install a screensaver on a Windows system?
I'm willing to take a dependency on Vista/Win7 if necessary.
The only suggestion I've had made so far, is to install the bulk of the screensaver normally, under Program Files
, and put a trigger/launcher into System32.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我找到了更多信息...
屏幕保护程序不必必须安装到
System32
(或SysWoW64
)中。但是,控制面板不会找到它,也不会列出它以供选择。
除非将其配置为当前屏幕保护程序。
让我解释一下...当前的屏幕保护程序是由
HKEY_CURRENT_USER\Control Panel\Desktop
中的SCRNSAVE.EXE
注册表项指定的。该键的值是.SCR
文件的完整路径。显示 (XP) 或屏幕保护程序 (Win7) 控制面板扫描 64 位系统上的
System32
(以及SysWow64
) ) 对于.SCR
文件。它还会扫描包含当前屏幕保护程序的文件夹(如果不同)。因此,如果直接设置注册表项,屏幕保护程序将在控制面板中列出并可供选择。但是,一旦用户选择了不同的屏幕保护程序,控制面板的下一次调用将不会列出新的屏幕保护程序。
I found more information ...
A screensaver does not have to be installed into
System32
(orSysWoW64
).However, the control panel won't find it and won't list it for selection.
Unless it's configured as the current screensaver.
Let me explain ... the current screensaver is specified by the
SCRNSAVE.EXE
registry key found inHKEY_CURRENT_USER\Control Panel\Desktop
. The value of this key is the complete path to a.SCR
file.The Display (XP) or Screen Saver (Win7) control panel scans
System32
(andSysWow64
on 64 bit systems) for.SCR
files. It also scans the folder containing the current screensaver, if that's different.So, if you set the registry key directly, the screensaver will be listed by the control panel and available for selection. But, as soon as the user selects a different screensaver, the next invocation of the control panel won't list the new screensaver.
32 位屏幕保护程序进入 system32,而 64 位屏幕保护程序进入 SysWoW64。
32bit screensavers go into system32, while 64bit screensavers go into SysWoW64.