C# WTSQueryUserToken失败,getlasterror()返回1723
C# WTSQueryUserToken失败,getlasterror()返回1723,c#,.net,winapi,pinvoke,rpc,C#,.net,Winapi,Pinvoke,Rpc,我有一个windows服务正在系统帐户的凭据下运行。该服务定期轮询windows以获取活动控制台会话id,即交互式登录windows用户,然后通过pinvoking wtsapi32.dll函数WTSQueryUserToken(…)检索与活动控制台会话id关联的用户令牌。该实现在现场99.9%的时间都能完美地工作。但是,最近我发现一个客户,该实现定期(但从不一致)检索活动控制台会话id的用户令牌失败
请参阅本文底部的客户操作系统信息
当WTSQueryUserToken()失败时,GetLas
我有一个windows服务正在系统帐户的凭据下运行。该服务定期轮询windows以获取活动控制台会话id,即交互式登录windows用户,然后通过pinvoking wtsapi32.dll函数WTSQueryUserToken(…)检索与活动控制台会话id关联的用户令牌。该实现在现场99.9%的时间都能完美地工作。但是,最近我发现一个客户,该实现定期(但从不一致)检索活动控制台会话id的用户令牌失败
请参阅本文底部的客户操作系统信息
当WTSQueryUserToken()失败时,GetLastError()返回Windows系统错误代码1723
错误代码1723的说明:“RPC服务器太忙,无法完成此操作”
下面是演示实现的示例代码段:
int ActiveSession = 0;
Win32Wrapper.GetActiveConsoleSessionId(ref ActiveSession);
IntPtr UserToken = IntPtr.Zero;
if(!Win32Wrapper.WTSQueryUserToken(ActiveSession, ref UserToken))
{
int myErr = Convert.ToInt32(Win32Wrapper.GetLastError());
log("Failed to retrieve UserToken." + myErr.ToString());
return;
}
else
{
log("Retrieved User Token");
}
有人知道罪魁祸首是什么吗
以下是客户的设置:
- 身份验证:Active Directory
- 操作系统:
- Microsoft Windows NT 5.1.2600服务
- 包3当前UI文化:en US
- 当前文化:en US CLR
- 版本:2.0.50727.3603
- IE版本:8.0.6001.18702
- 系统类型:32位自由
- 物理内存:总计411MB
- 物理内存:893MB系统
- 制造商:戴尔公司
- 型号:Vostro 1000
- 处理器1:AMD Athlon(tm)64 X2双核处理器TK-57
服务:
姓名:警员
启动模式:禁用
状态:停止
名称:应用层网关服务
启动模式:手动
状态:正在运行
名称:苹果移动设备
启动模式:自动
状态:正在运行
名称:应用程序管理
启动模式:手动
状态:停止
名称:ASP.NET状态服务
启动模式:手动
状态:停止
名称:Ati热键轮询器
启动模式:自动
状态:正在运行
名称:Windows音频
启动模式:自动
状态:正在运行
名称:后台智能传输服务
启动模式:自动
状态:正在运行
姓名:你好
启动模式:自动
状态:正在运行
名称:电脑浏览器
启动模式:自动
状态:正在运行
名称:索引服务
启动模式:手动
状态:停止
名称:剪贴簿
启动模式:禁用
状态:停止
名称:.NET运行时优化服务v2.0.50727_X86
启动模式:手动
状态:停止
名称:COM+系统应用程序
启动模式:手动
状态:停止
名称:加密服务
启动模式:自动
状态:正在运行
名称:DCOM服务器进程启动器
启动模式:自动
状态:正在运行
名称:DHCP客户端
启动模式:自动
状态:正在运行
名称:逻辑磁盘管理器管理服务
启动模式:手动
状态:停止
名称:逻辑磁盘管理器
启动模式:自动
状态:正在运行
名称:DNS客户端
启动模式:自动
状态:正在运行
名称:有线自动配置
启动模式:手动
状态:停止
名称:可扩展身份验证协议服务
启动模式:手动
状态:停止
名称:错误报告服务
启动模式:禁用
状态:停止
名称:事件日志
启动模式:自动
状态:正在运行
名称:COM+事件系统
启动模式:手动
状态:正在运行
名称:快速用户切换兼容性
启动模式:手动
状态:停止
名称:FlipShare服务
启动模式:自动
状态:正在运行
名称:Windows演示文稿基础字体缓存3.0.0.0
启动模式:手动
状态:停止
名称:帮助和支持
启动模式:自动
状态:正在运行
名称:HID输入服务
启动模式:自动
状态:正在运行
名称:健康密钥和证书管理服务
启动模式:手动
状态:停止
名称:HTTP SSL
启动模式:手动
状态:停止
名称:InstallDriver表管理器
启动模式:手动
状态:停止
名称:Windows CardSpace
启动模式:手动
状态:停止
名称:IMAPI CD刻录COM服务
启动模式:禁用
状态:停止
名称:iPod服务
启动模式:手动
状态:停止
名称:Java快速入门
启动模式:禁用
状态:停止
名称:服务器
启动模式:自动
状态:正在运行
名称:工作站
启动模式:自动
状态:正在运行
名称:TCP/IP NetBIOS帮助程序
启动模式:自动
状态:正在运行
名称:McAfee框架服务
启动模式:自动
状态:正在运行
姓名:McAfee McShield
启动模式:自动
状态:正在运行
姓名:McAfee任务管理器
启动模式:自动
状态:正在运行
名称:机器调试管理器
启动模式:自动
状态:正在运行
姓名:信使
启动模式:禁用
状态:停止
姓名:视觉控制经理
启动模式:禁用
状态:停止
名称:NetMeeting远程桌面共享
启动模式:禁用
状态:停止
名称:分布式事务协调器
启动模式:手动
状态:停止
名称:Windows安装程序
启动模式:手动
状态:停止
名称:网络访问保护代理
启动模式:手动
状态:停止
名称:网络DDE
启动模式:禁用
状态:停止
名称:网络DDE DSDM
启动模式: