如何激活一个已存在的进程? 问题是这样的,我做了一个帮助文档,我用Process通过程序打开这个帮助文件,不过我想在打开之前先判断当前进程中是否已经存在该帮助文件的进程,如果存在则激活该进程,否则再开启一个新的进程,请问如何实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 foreach(作些工作)if 存在,激活else 新开启 我想在 .NET 框架中用 C# 编写一个程序,该程序要激活另一个窗口。在 Windows/MFC 中我可以调用 SetActiveWindow 函数来实现。在.NET 框架中我该怎么做呢? John McCormick 你可以调用 Form.Activate 来激活你自己的窗体,但惊奇的是,在 .NET Framework 中没有函数可以激活属于另外一个进程或程序的窗体。不要害怕,任何时候,只要.NET Framework无法满足你的需要,你通常都可以使用托管(interop)机制直接与Windows 交互。目前情况下,你需要的函数是 SetForegroundWindow。它带唯一的参数——你想激活的窗 口的句柄(HWND). using System.Runtime.InteropServices;public class MyClass { [DllImport("user32.dll")] public static extern void SetForegroundWindow(IntPtr hwnd);}在你的代码中使用此托管申明,并且假设你已经拥有了你希望激活的窗口的句柄,你要做的是调用 SetForegroundWindow: IntPtr hwnd = // get HWNDSetForegroundWindow(hwnd); 你怎样获得窗口句柄呢?根据你的程序的工作方式,有许多方法可以做到,但最通用的一种方法是调用 FindWindow,你可以用这个 API 函数由窗口的标题或类名获得窗口句柄,在此你又要在 C# 中用到托管: public class MyClass { [DllImport("user32.dll")] public static extern IntPtr FindWindow(String classname, String title);}classname 是 Window 注册的窗口类的名字,title 是窗口标题。这些参数只能有一个为 NULL,不能全为 NULL。 GDI+高手来看看----绘制铁路的问题 动态数组的问题 开发水晶报表工资高不 疑问 Microsoft Visual Studio 2008 禁止 自动 保存环境配置 vs2005的控件真的不能用吗? VB转C#,刚学的一些问题,麻烦各位帮忙解答,谢谢谢谢~ 请问,c#winform开发中,界面没有用到数据集,数据填充table到datagrid,我现在想用vs.net2003还到报表打印怎么做? 请教一个简单问题 C#的这段代码为什么说有OleDbException?急! 请教:怎样用c#.net在SQL SERVER 2000中创建数据库 怎样下载文件(菜鸟提问)
if 存在,激活
else 新开启
John McCormick 你可以调用 Form.Activate 来激活你自己的窗体,但惊奇的是,在 .NET Framework 中没有函数可以激活属于另外一个进程或程序的窗体。不要害怕,任何时候,只要.NET Framework无法满足你的需要,你通常都可以使用托管(interop)机制直接与Windows 交互。目前情况下,你需要的函数是 SetForegroundWindow。它带唯一的参数——你想激活的窗 口的句柄(HWND). using System.Runtime.InteropServices;
public class MyClass {
[DllImport("user32.dll")]
public static extern void
SetForegroundWindow(IntPtr hwnd);
}在你的代码中使用此托管申明,并且假设你已经拥有了你希望激活的窗口的句柄,你要做的是调用 SetForegroundWindow: IntPtr hwnd = // get HWND
SetForegroundWindow(hwnd); 你怎样获得窗口句柄呢?根据你的程序的工作方式,有许多方法可以做到,但最通用的一种方法是调用 FindWindow,你可以用这个 API 函数由窗口的标题或类名获得窗口句柄,在此你又要在 C# 中用到托管: public class MyClass {
[DllImport("user32.dll")]
public static extern IntPtr
FindWindow(String classname, String title);
}classname 是 Window 注册的窗口类的名字,title 是窗口标题。这些参数只能有一个为 NULL,不能全为 NULL。