如何在Windows中锁定屏幕?

3
通常我使用Java进行开发,但现在我需要编写一个应用程序,每隔X分钟屏幕会锁定Y分钟。 它需要休息一下(我想在Windows中有一个类似Linux的应用程序)。
所以我建议使用C ++和User32.dll来实现它? 我是对的吗?(我不想使用C#开发应用程序)。 谁能给我一个想法,使用哪些方法来锁定屏幕,我是WinAPI开发新手。
谢谢!

你说的“锁定”屏幕是什么意思?为什么要这样做? - David Heffernan
我想放置一个计时器,用于倒计算休息时间剩余时间,并使整个屏幕无法响应点击。 - gennad
我认为已经有很多应用程序可以做到这一点了,为什么要自己编写呢? - David Heffernan
如果您能给我一些具有这种功能的开源应用程序的提示,我将非常感激。 - gennad
1
.NetVB6 相关的问题。 - Deanna
1个回答

9

只需将您的应用程序链接到 user32.dll 并直接调用 LockWorkStation() 函数即可。


谢谢您的回复,非常有帮助。但是,是否有任何变体可以不关闭屏幕,只是使其无响应? - gennad
老实说,我不确定。你可能可以创建一个弹出窗口,它会窃取鼠标和键盘焦点,并在超时发生之前无响应。 - kwantam
Rundll32.exe 需要一个特定的函数签名,而 LockWorkStation() 没有这个签名。你不应该混合它们。我已经从你的答案中删除了这部分内容。 - Deanna

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接