Process问题在C# WindowsForm程序中,想实现这样的功能:if(有正在运行的IE浏览器窗口){//正在运行的IE浏览器窗口显示在最前面}else{//打开并显示IE浏览器Process.Start("iexplore.exe");}请问//正在运行的IE

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/20 00:10:30

Process问题在C# WindowsForm程序中,想实现这样的功能:if(有正在运行的IE浏览器窗口){//正在运行的IE浏览器窗口显示在最前面}else{//打开并显示IE浏览器Process.Start("iexplore.exe");}请问//正在运行的IE
Process问题
在C# WindowsForm程序中,想实现这样的功能:
if(有正在运行的IE浏览器窗口)
{
//正在运行的IE浏览器窗口显示在最前面
}
else
{
//打开并显示IE浏览器
Process.Start("iexplore.exe");
}
请问
//正在运行的IE浏览器窗口显示在最前面
这里怎样实现?
这个我试了不好用
SetForegroundWindow返回的是false

Process问题在C# WindowsForm程序中,想实现这样的功能:if(有正在运行的IE浏览器窗口){//正在运行的IE浏览器窗口显示在最前面}else{//打开并显示IE浏览器Process.Start("iexplore.exe");}请问//正在运行的IE
在你的class中加入
[System.Runtime.InteropServices.DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
然后要知道IE浏览器窗口的句柄~ (C#中IntPtr)
可以使用FindWindow获得,也可以使用进程获得.
进程法:
System.Diagnostics.Process[] p = System.Diagnostics.Process.GetProcessesByName("iexplore");
然后便可以使用了
if (p.Length > 0)
{
SetForegroundWindow(p[0].MainWindowHandle);
}