Ruby Win32API锁定用户屏幕

时间:2017-05-15 23:58:50

标签: ruby winapi

我正在使用Ruby编写一个应用程序,它将在Windows上作为后台进程运行。

在应用程序中的某一点,我希望它锁定用户屏幕。我尝试了几种方法,如" system"," exec",反引号,产生新进程,调用批处理脚本等等。

看来由于这个程序在后台运行,我无法访问普通的shell命令,而且我必须使用Win32API来锁定用户屏幕。

我如何使用Win32API来完成此任务?

1 个答案:

答案 0 :(得分:2)

致电LockWorkStation

要从Ruby执行此操作,请使用本主题中介绍的Win32API类:How do I call Windows DLL functions from Ruby?

来自LockWorkStation的文档:

  

LockWorkStation 功能只能由交互式桌面上运行的进程调用。此外,用户必须登录,并且工作站尚未锁定。

这表示您无法通过服务拨打LockWorkStation