タスクバー (Windows ユーザー) のウィンドウをクリックすると、最後の状態 (最大化または通常のスケーラブル ウィンドウ) が保持されます。私は同様のことをしようとしていますが、プログラム的に、ウィンドウがフォーカスを得ることなく(たとえば、フォアグラウンドになり、別のウィンドウでの現在のアクティビティを妨げます)。
それをしてもいいですか?現在のウィンドウの状態は、次の API 呼び出しを使用して取得できます。
//Empty Window placement structure
WinDefExt.WINDOWPLACEMENT placement = new WinDefExt.WINDOWPLACEMENT();
//winapi call to external User32.dll file
UserExt.GetWindowPlacement(hwnd, placement);
//showCmd should be equal to one of the SW_ constants (here: https://msdn.microsoft.com/en-us/library/windows/desktop/ms633548%28v=vs.85%29.aspx)
placement.showCmd;