private const int WS_SHOWNORMAL = 1;private static void HandleRunningInstance(Process instance) { //Make sure the window is not minimized or maximized ShowWindowAsync (instance.MainWindowHandle , WS_SHOWNORMAL); //Set the real intance to foreground window SetForegroundWindow (instance.MainWindowHandle); }也可以搜索一下,班班有回复过这个问题
showwindow(handle,4)
前面是窗口句柄,后面指示显示的方法 4 是激活并显示 6 是显示到最前 (好像是这些,你一个一个试试就行了)
SW_HIDE 隐藏窗口,活动状态给令一个窗口
SW_MINIMIZE 最小化窗口,活动状态给令一个窗口
SW_RESTORE 用原来的大小和位置显示一个窗口,同时令其进入活动状态
SW_SHOW 用当前的大小和位置显示一个窗口,同时令其进入活动状态
SW_SHOWMAXIMIZED 最大化窗口,并将其激活
SW_SHOWMINIMIZED 最小化窗口,并将其激活
SW_SHOWMINNOACTIVE 最小化一个窗口,同时不改变活动窗口
SW_SHOWNA 用当前的大小和位置显示一个窗口,不改变活动窗口
SW_SHOWNOACTIVATE 用最近的大小和位置显示一个窗口,同时不改变活动窗口
SW_SHOWNORMAL 与SW_RESTORE相同
//Make sure the window is not minimized or maximized
ShowWindowAsync (instance.MainWindowHandle , WS_SHOWNORMAL); //Set the real intance to foreground window
SetForegroundWindow (instance.MainWindowHandle);
}也可以搜索一下,班班有回复过这个问题
[STAThread]
static void Main()
{
Process[] process=Process.GetProcessesByName("上网时间1.0");
if(process.Length <2)
{
connectInterNet cin=new connectInterNet();
Application.Run(cin);
cin.WindowState=FormWindowState.Minimized;
}
else
{
MessageBox.Show("该程序已运行", "提示!");
//在这儿忝加你的内容
}
}
其中的HANDLE是窗口句柄。你用FindWindow(,,,) API找到你要显示的窗口句柄就可以显示他了。