C# - minimalizacja okna zewnętrznego procesu

0

Tak jak w temacie. W programie obsługuję zewnętrzny proces za pomocą obiektu typu Process. Chce w pewnym momencie zminimalizować główne okno tego procesu. Czy ktoś wie jak to zrobić? Podejrzewam, że trzeba użyć w pewien sposób MainWindowHandle, które jest własnością klasy Process tylko nie wiem jak.

pozdrawiam.

0
[StructLayout(LayoutKind.Sequential)]
public struct WINDOWPLACEMENT
{
    public int length;
    public int flags;
    public int showCmd;
    public System.Drawing.Point ptMinPosition;
    public System.Drawing.Point ptMaxPosition;
    public System.Drawing.Rectangle rcNormalPosition;

    public static WINDOWPLACEMENT Default
    {
        get
        {
            WINDOWPLACEMENT result = new WINDOWPLACEMENT();
            result.length = Marshal.SizeOf(result);
            return result;
        }
    }
}

[DllImport("user32.dll")]
static extern bool SetWindowPlacement(IntPtr hWnd,
   [In] ref WINDOWPLACEMENT lpwndpl);
WINDOWPLACEMENT windowPlacement = WINDOWPLACEMENT.Default;
windowPlacement.showCmd = 2; // minimized

SetWindowPlacement(proces.MainWindowHandle, ref windowPlacement);

1 użytkowników online, w tym zalogowanych: 0, gości: 1