1

有没有办法激活或将外部应用程序的窗口带到前面?我能得到的最接近的是

var application = Application.Attach("SearchApp");
var searchWindow = application.GetWindows()[0];

searchWindow.Focus(DisplayState.Maximized);

但是,如果它当前未处于活动状态,那么所做的就是在后台将其最大化。

4

1 回答 1

2

得到它的工作。

    [DllImport("user32.dll", SetLastError = true)]
    internal static extern bool SetForegroundWindow(IntPtr windowHandle);


    public bool SearchTest(string file) {
        try
        {
            // White stuff, not relevant to problem
            //var application = Application.Attach("SearchApp"); 
            //var searchWindow = application.GetWindows()[0];

            Process p = Process.GetProcessesByName("SearchApp")[0];
            SetForegroundWindow(p.MainWindowHandle);
于 2014-07-17T15:22:50.357 回答