如何知道其他应用程序的form2正在运行

时间:2016-02-08 10:44:55

标签: vb.net

我的问题来自here

我如何从一个应用程序知道另一个应用程序具有活动表单。 运行两个应用程序(a.exe和b.exe)的同一台机器(windows)都在vb.net中创建。 a.exe如何知道b.exe form2是否已打开?

我知道b.exe正在运行:

Public Function IsApplicationRunning(ByVal appName As String) As Process
   For Each aProcess in Process.GetProcesses()   
      If aProcess.ProcessName.StartsWith(appName, StringComparisong.CurrentCultureIgnoreCase) Then
         Return aProcess  
      End If
   Next
   Return Nothing
End Function

1 个答案:

答案 0 :(得分:0)

没有直接的方式,Form2需要公开可以用来识别它的东西(例如某个标题)。

您已拥有流程处理。然后,检查every window of that process。如果找到匹配的窗口,则指定的表单很可能是打开的。但是,没有保证,因为它总是一个看起来相似的窗口(但是它基于另一个类)。