当工作站被锁定时得到通知
Get notified when workstation gets locked
在 Windows 系统上按 Win + L 将锁定工作站。
当工作站被锁定时,XUL 插件是否有检测方法?我可能会检测到按下这个组合键,但只有在 XUL 应用程序处于焦点时它才会起作用。
当计算机进入睡眠模式(或唤醒)时,有一个 sleep_notification 可用。我找不到任何关于锁定工作站的信息。
找到使用 js-ctypes 的方法(在 Windows 10 上测试):
Components.utils.import("resource://gre/modules/ctypes.jsm");
var lib = ctypes.open("user32.dll"),
openDesktop = lib.declare("OpenDesktopA", ctypes.winapi_abi, ctypes.uint32_t, ctypes.char.ptr, ctypes.uint32_t, ctypes.bool, ctypes.uint32_t),
switchDesktop = lib.declare("SwitchDesktop", ctypes.winapi_abi, ctypes.bool, ctypes.uint32_t),
closeDesktop = lib.declare("CloseDesktop", ctypes.winapi_abi, ctypes.bool, ctypes.uint32_t),
desktop = openDesktop("Default", 0, 0, 0x0100),
isUnLocked = switchDesktop(desktop);
console.log(isUnLocked);//result false = locked, true = unlocked
closeDesktop(desktop);
lib.close();
在 Windows 系统上按 Win + L 将锁定工作站。 当工作站被锁定时,XUL 插件是否有检测方法?我可能会检测到按下这个组合键,但只有在 XUL 应用程序处于焦点时它才会起作用。
当计算机进入睡眠模式(或唤醒)时,有一个 sleep_notification 可用。我找不到任何关于锁定工作站的信息。
找到使用 js-ctypes 的方法(在 Windows 10 上测试):
Components.utils.import("resource://gre/modules/ctypes.jsm");
var lib = ctypes.open("user32.dll"),
openDesktop = lib.declare("OpenDesktopA", ctypes.winapi_abi, ctypes.uint32_t, ctypes.char.ptr, ctypes.uint32_t, ctypes.bool, ctypes.uint32_t),
switchDesktop = lib.declare("SwitchDesktop", ctypes.winapi_abi, ctypes.bool, ctypes.uint32_t),
closeDesktop = lib.declare("CloseDesktop", ctypes.winapi_abi, ctypes.bool, ctypes.uint32_t),
desktop = openDesktop("Default", 0, 0, 0x0100),
isUnLocked = switchDesktop(desktop);
console.log(isUnLocked);//result false = locked, true = unlocked
closeDesktop(desktop);
lib.close();