2012-03-23 11 views
0

私はWPFでアプリケーションを実行しています。このアプリケーション内でボタンをクリックすると、そのウィンドウが最大化された別のアプリケーションが開きます。しかし、私は最初のアプリケーションを停止して待つことは望ましくありません。私は両者が独立して開かれ、独立して走ってほしい。別のアプリケーションの中にアプリケーション.exeウィンドウを開く

ボタンを再度クリックすると、アプリケーションが最小化された場合にアプリケーションが最大化されます。そうでない場合は、再び開いています。

C#はどのように使用できますか?私は以下を試しました:

Process process = Process.GetProcesses().FirstOrDefault(f => f.ProcessName.Contains("Analysis")); 

ShowWindow((process ?? Process.Start("..\\..\\..\\MS Analysis\\bin\\Debug\\Chemtech.RT.MS.Analysis.exe")).MainWindowHandle.ToInt32(), SW_MAXIMIZE); 

しかし、プロセスが開始しても、ウィンドウは開かれません。

+0

ShowWindowの宣言を表示できますか? ...とSW_MAXIMIZE ... – Steve

+0

[DllImport( "User32")] プライベート静的extern int ShowWindow(int hwnd、int nCmdShow); – jpnavarini

+0

SW_MAXIMIZE = 3 – jpnavarini

答えて

0
var hwnd = ..; 
ShowWindow(hwnd, SW_MAXIMIZE); 
BringWindowToTop(hwnd); 

[DllImport("user32.dll", SetLastError=true)] 
static extern bool BringWindowToTop(IntPtr hWnd) 
関連する問題