我有一台虚拟化的
Windows XP SP3机器,我通过远程桌面连接.
我的一个脚本需要使用%sessionname%变量.但是,这会返回
错误信息.
C:\>%sessionname%
不断返回RDP-Tcp#5,而不是当前连接的会话(RDP-Tcp#35或类似)的值,如任务管理器中所示
这会导致我的脚本包含不正确的信息.我该怎么做才能解决这个问题?
编辑更多信息:出现重新启动以解决第一次连接的问题,但随后的连接会使数字再次失去同步.
我作为远程桌面运行的Windows Server 2008 R2遇到了完全相同的问题.会话ID似乎始终是正确的,但您无法从%sessionid%或VBA Environ(“SessionID”)
获取会话ID.我的
解决方法是使用带有C:>
查询会话的Environ(“UserName”)来
提取SessionID,然后使用C:>
查询进程“processname”来确定进程是否在会话中运行.我不确定你的脚本在做什么,但也许这种
方法会有所帮助.请注意,这仅在
用户一次只允许一个会话时才有效,如我们的终端服务器设置中的情况.如果
用户可以拥有多个会话,则基于
用户名,sessionid将不是唯一的.