Как скрыть консоль после создания формы в консольном приложении - PullRequest
3 голосов
/ 29 января 2010

Я хочу скрыть консоль после создания в моем консольном приложении. А потом покажи его снова после закрытия формы :) или где-нибудь, когда захочу ...

Console.Hide???
Application.Run(nForm());
Console.Show???

1 Ответ

8 голосов
/ 29 января 2010

Я думаю, вам нужно углубиться в вызовы API FindWindow и ShowWindow. Например:

    [DllImport("user32.dll")]
    public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);


    [DllImport("user32.dll")]
    public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);

    static void Main(string[] args)
    {
        Console.Title = "ConsoleApplication1";

        IntPtr h=FindWindow(null, "ConsoleApplication1");

        ShowWindow(h, 0); // 0 = hide

        Form f = new Form();

        f.ShowDialog();

        ShowWindow(h, 1); // 1 = show

    }
...