【发布时间】:2012-02-01 06:36:14
【问题描述】:
我想让我的用户在特定时间内只使用几个预定义的应用程序列表。我正在使用 C# Windows 服务,它将在后台运行并在特定时间段内检查活动窗口,以验证活动应用程序是否在允许的应用程序列表中。
我做了一些功课,看来我需要通过SetWinEventHook()捕获“窗口切换”事件,然后调用SwitchToThisWindow()或SetActiveWindow()切换回来以防出现新窗口不允许。
但这并没有真正起作用。我仍然可以切换到其他窗口。
我做错了什么,或者即使我采取了正确的方法?
【问题讨论】:
-
我们能看到你尝试过的代码吗?
-
这行不通。 Windows 服务不在用户的桌面上运行,因此他们不知道自己打开了哪些窗口。你不想要服务。编写应用程序首先是解决这个问题的完全错误的方法。 Windows 具有用于锁定机器的内置安全功能。调查使用组策略;在Server Fault 上询问更多关于此的问题。
标签: c# winapi windows-services window