会话 0 隔离 [英] Session 0 Isolation

查看:60
本文介绍了会话 0 隔离的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Vista 推出了一个新的安全措施来阻止会话 0 访问像显卡这样的硬件,并且用户不再登录会话 0.我知道这意味着我无法向用户显示 GUI,但是,这是否也意味着我一个都不能显示?就我现在的代码设置方式而言,仅使其成为命令行会需要更多的工作,但是如果我可以使用现有代码并仅以编程方式管理 GUI,则需要的代码会少很多.

Vista puts out a new security preventing Session 0 from accessing hardware like the video card, and the user no longer logs into session 0. I know this means that I cannot show the user a GUI, however, does that also mean I can't show one at all? The way my code is set up right now, it would be more work to make it command line only, however if I can use my existing code and just programmatically manage the GUI it would take a lot less code.

这可能吗?

来自 MSDN 的文章是这样说的:

The article from MSDN says this:

• 服务尝试在会话 0 中创建用户界面 (UI),例如对话框.由于用户不在会话 0 中运行,因此他或她永远不会看到 UI,因此无法提供输入服务正在寻找.该服务似乎停止运行,因为它正在等待没有发生的用户响应.

• A service attempts to create a user interface (UI), such as a dialog box, in Session 0. Because the user is not running in Session 0, he or she never sees the UI and therefore cannot provide the input that the service is looking for. The service appears to stop functioning because it is waiting for a user response that does not occur.

这让我觉得有可能有​​一个自动化的 UI,但有人告诉我你不能将 SendKeys 与服务一起使用,因为它在会话 0 中被禁用.

Which makes me think it is possible to have an automated UI, but someone told me that you couldn't use SendKeys with a service because it was disabled in Session 0.

我实际上不需要向用户展示 GUI

I don't actually need to show the user the GUI

推荐答案

你可以展示一个;它只是没有出现.

You can show one; it just doesn't show up.

任务栏中有一个关于有一个 GUI 窗口和切换到它的方法的小通知.

There is a little notification in the taskbar about there being a GUI window and a way to switch to it.

无论如何,实际上有一个用于切换活动会话的 TerminalServices API 命令,如果您确实需要它显示,您可以调用它.

Anyway, there actually is a TerminalServices API command to switch active session that you could call if you really needed it to show up.

这篇关于会话 0 隔离的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆