2010-09-30 45 views
0

对于我正在构建的应用程序,要求是在任何时候都能够微妙地显示状态。起初,我决定简单地禁用屏幕保护程序,但现在认为最好使用滚动字幕屏幕保护程序来指示状态。任何人都知道如何以编程方式更改选取框屏幕保护程序的文本?

这可能吗?我会怎么做呢?由于该应用只能安装在我控制的少量机器上,因此我可以手动将屏幕保护程序设置为选取框(即应用程序不需要)。我使用C#,.NET和WinForms

+0

四年:我希望我能记得这是什么应用程序。 – 2014-11-17 16:04:25

回答

5

As Cipi表示选取框屏保将文本存储在注册表中。但我认为屏幕保护程序在显示之前只读取一次该值,因此在屏幕保护程序处于活动状态时,您将无法更改状态。

你可以创建自己的屏保并非如此hard

+0

是的,这将是一个很好的选择。 – Cipi 2010-09-30 12:46:23

+0

包括+1个很棒的链接 – Adkins 2010-10-01 06:44:02

1

可以在Windows注册表,更改项下的它的文字:

HKEY_CURRENT_USER\Control Panel\Screen Saver.Marquee\Text 

使用此代码来修改注册表中的值:

using Microsoft.Win32; 

RegistryKey marquee= Registry.CurrentUser.OpenSubKey(@"Control Panel\Screen Saver.Marquee", true); 
marquee.SetValue("Text", "LALALALA", RegistryValueKind.String); 

它将文本设置为“LALALALA”。

+0

这将导致屏幕保护程序文本即使在它已经运行时也会更改吗? – 2010-09-30 12:34:46

+0

我从来没有尝试过,但我会很惊讶,如果它 - 没有理由屏幕保护程序会期望文本改变,而它正在显示... – Basic 2010-09-30 12:39:48

+0

我不认为它会改变文本,而屏幕保护程序正在运行(**实际上我非常确定它不会**),但是您可以更改注册表设置并使用新文本重新启动屏幕保护程序...或者,如果这不是您想要的,最好的办法是黑客OpenGL显示文本... – Cipi 2010-09-30 12:43:07

0

您是否真的检查过屏幕保护程序启动后应用程序会发生什么?

我记得一旦屏幕保护程序继续运行,由于个人电脑在某种减少的状态下运行,制定了一个旨在全天候运行的程序implode

不可否认,这可能是由于我们通过USB组件进行硬件监控的事实,所以它可能是与驱动程序有关的东西搞砸了我们,但是,是的,我观察到很多当屏幕保护程序开启时,应用程序中的奇怪现象。

在您承诺通过屏幕保护显示任何内容之前值得检查。

相关问题