繁体   English   中英

WTSEnumerateProcesses和终端服务服务

[英]WTSEnumerateProcesses and Terminal Services Service

我的Windows服务偶尔会在调用WTSEnumerateProcesses()时报告以下错误:

绑定句柄无效。

我怀疑这是由于终端服务服务不可用而引起的,即使我已将终端服务服务注册为服务的从属服务。

我相信,即使终端服务服务正在运行,它也尚未完成初始化(或正在关闭),并且无法为任何请求提供服务,从而导致错误。

我在WTSRegisterSessionNotification()的参考文档中注意到以下内容:

设置Global \\ TermSrvReadyEvent全局事件后,所有依赖服务都已启动,并且可以成功调用此函数。

这不会出现在WTSEnumerateProcesses()的文档中,但是是否同样适用? 意味着在Global\\\\TermSrvReadyEvent上尝试OpenEvent()会表明终端服务实际可用吗?


平台:Windows XP,Windows Vista和Windows 7

您肯定要OpenEvent(SYNCHRONIZE, false, L"Global\\\\TermSrvReadyEvent")并等待。

所有WTS*功能都在C API的支持下通过RPC调用终端服务服务(现称为远程桌面服务服务)( 请参阅运行时接口协议 )。

与c00000fd所经历的相反,我从未遇到过标准用户帐户的问题以及Windows 7及更高版本上的事件对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM