微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

确定用户何时locking/解锁他们的PC

可能重复:

我怎样才能以编程方式确定我的工作站是否被locking?

使用c#检查工作站locking/解锁更改

我想确定何时Windows(XP或7)机器被locking,并解锁。

我想创build一个时间表活动logging应用程序,预填充时间,午餐,rest等等,将是非常有用的。

当Windows操作系统被locking和解锁时,是否有可能触发事件?

使用.NETdebugging“Application.exe已停止工作”

后台线程上的Windows Mobile C#数据集更新

为什么Microsoft.Build.Evaluation在64位PC上将$(ProgramFiles)评估为“c: program files”?

ASP.NET:你最常用的httpmodules

使用BluetoothLEDevice.FromIdAsync连接到蓝牙设备会导致错误

什么是validation.NET Windows窗体的正确方法

ClickOnce开始菜单图标

C#的devise模式,并基于string参数调用不同的方法

有没有一种简单的方法来确定文件的types而不知道文件的扩展名?

文件被locking时,稍后对文件操作进行排队

试试这个( 在这里找到 ):

SystemEvents.SessionSwitch += new SessionSwitchEventHandler(SystemEvents_SessionSwitch); // unhook static eventhandler when application terminates! //Handle event static void SystemEvents_SessionSwitch(object sender,SessionSwitchEventArgs e) { Console.WriteLine(e.Reason.ToString()); }

这是一个工作的例子。 运行这个,锁定和解锁你的工作站,并观察输出

using System; using Microsoft.Win32; namespace ConsoleApplication1 { class Program { private static SessionSwitchEventHandler sseh; static void Main(string[] args) { sseh = new SessionSwitchEventHandler(SystemEvents_SessionSwitch); SystemEvents.SessionSwitch += sseh; while(true) {} } static void SystemEvents_SessionSwitch(object sender,SessionSwitchEventArgs e) { Console.WriteLine(e.Reason.ToString()); } } }

您可能还想要检测屏幕保护程序何时运行。

您需要获取会话更改通知,首先在此处查看PInvoke

正如评论所述,有人应该考虑这种使用这个API的业务影响。

一旦用户意识到这种监控,他们可能会试图离开会议解锁,甚至共享密码,这将是反生产。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐