我想在visual basic中模拟WindowsKey + L(锁定控制台的快捷方式)并将其绑定到一个函数。因此,当调用此函数时,它将锁定控制台。我可以这样做吗?
user1578532
问问题
1984 次
1 回答
14
模拟热键是错误的方法。您需要做的就是调用该LockWorkStation
函数。这与按Ctrl+ Alt+Del并选择“锁定工作站”或使用Win+L热键具有相同的结果,但您可以通过代码以编程方式执行此操作。
要从 VB 应用程序调用此函数,您需要编写一个声明,如下所示:
Private Declare Function LockWorkStation Lib "user32.dll" () As Long
在定义任何过程之前,您需要将该声明放在模块文件的顶部。然后,在其中一个过程中,您可以调用该函数。例如:
Private Sub LockComputer()
LockWorkStation
End Sub
更好的代码会检查LockWorkStation
错误代码的返回值。返回值 0 表示错误。在 VB 中检查 Win32 错误的标准方法Err.LastDllError
将为您提供更多关于究竟出了什么问题的信息。
于 2012-08-11T03:25:40.953 回答