c#获取当前登录用户的所有进程,而不是所有用户的进程

来源:互联网 发布:电视剧网站源码 编辑:程序博客网 时间:2024/05/18 12:29

在windows编程中,有很多时候会遇到需要检查某些程序是否结束的问题。


如果是单用户服务,直接使用foreach (Process clsProcess in Process.GetProcesses())

默认遍历所有用户的所有进程。


但是如果涉及到远程桌面服务器的程序,咋需要增加限制,仅检查当前登录用户的进程,避免多用户同时登录的时候对检查结果产生错误的影响。这时候需要使用SID即Process.SessionID。


例如:A,B两个用户均远程一台电脑服务器。A打开某程序,B同时也打开某程序,则使用默认方法检查进程是否存在的则不可用,会出现错误的结果。需要用到Sid做判断。

具体的使用方法可以参考我的资源:http://download.csdn.net/download/qq_39956515/10111822

原创粉丝点击