C#如何获取windows正在运行的进程

0五月天 2012-09-10 09:29:19
请问下有什么办法能把所有windows当前所有用户正在运行的进程都获取到,包括远程登录用户的进程。
...全文
734 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
瓦力2392 2014-10-28
  • 打赏
  • 举报
回复
如果可以修改这个WinForm程序的话,把这个WinForm程序改为单实例的。方法是在程序的入口处Main中加入如下代码:

            bool isRunning;
            System.Threading.Mutex mutex = new System.Threading.Mutex(true, "OnlyRunOneInstance", out isRunning);
            if (isRunning)
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            }
            else
            {
                MessageBox.Show("程序已启动", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

0五月天 2012-09-11
  • 打赏
  • 举报
回复
process能获取到其他登录用户已经打开的进程么?现在的需求是有一个winfrom程序在服务器上运行,而且是开机自启的。就是当服务器重启的时候这个程序就会启动,当有远程桌面连接到这个服务器的时候winfrom也会自动启动,也就是说这个时候系统上就会有2个winfrom在运行了。现在就是有没有办法只能让本机运行这个winfrom
owennol 2012-09-11
  • 打赏
  • 举报
回复
using System.Diagnostics;

string str = "";
Process[] processes;
//Get the list of current active processes.
processes = System.Diagnostics.Process.GetProcesses();
//Grab some basic information for each process.
Process process;
for(int i = 0;i<processes.Length-1;i++)
{
process = processes[i];
str = str + Convert.ToString(process.Id) + " : " +
process.ProcessName + "\r\n";
}
//Display the process information to the user
System.Windows.Forms.MessageBox.Show(str);
0五月天 2012-09-11
  • 打赏
  • 举报
回复
就是怎么判断远程桌面不让运行
0五月天 2012-09-11
  • 打赏
  • 举报
回复
谁知道啊
devmiao 2012-09-10
  • 打赏
  • 举报
回复
msdn下process类。
devmiao 2012-09-10
  • 打赏
  • 举报
回复
msdn下process类。

110,500

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧