C# 关闭Console窗口时,关闭所有应用程序

C# 关闭Console窗口时,关闭所有应用程序,c#,C#,我正在使用windows窗体,我有一个主窗体,当我单击某个按钮时,他会打开一个控制台窗口,该窗口可以执行一些工作,完成后,我希望在不关闭所有应用程序的情况下关闭控制台(主窗体)。我尝试使用环境关闭控制台。退出(1)或属于控制台窗口Destroy()和Create()的函数Destroy()。Environment.Exit(1)和Destroy()都关闭控制台,但也关闭表单。 我想知道是否有办法只关闭控制台而不关闭整个应用程序 编辑 private void btSync_Click(o

我正在使用windows窗体,我有一个主窗体,当我单击某个按钮时,他会打开一个控制台窗口,该窗口可以执行一些工作,完成后,我希望在不关闭所有应用程序的情况下关闭控制台(主窗体)。我尝试使用
环境关闭控制台。退出(1)
或属于控制台窗口
Destroy()
Create()
的函数
Destroy()
Environment.Exit(1)
Destroy()
都关闭控制台,但也关闭表单。 我想知道是否有办法只关闭控制台而不关闭整个应用程序

编辑

    private void btSync_Click(object sender, EventArgs e)
    {
        Create();
        ServerSync sycs=new ServerSync();
        Thread sync = new Thread(new ThreadStart(sycs.run));
        sync.Start();
    }
Create()
打开运行
Socket()
线程的控制台窗口

问题已解决 当我启动线程时,我将添加到代码a
ThreadName.Abort
的末尾,并在线程外部检查
ThreadName.isalive==false
和if
Hide()
控制台内部,然后检查
Destroy()
是否有效

Hide()
方法来自AppDeveloper答案。
谢谢你的帮助

可能有一个console.hide()选项?可以试用。

而不是使用
Environment.Exit()
隐藏
控制台窗口

using System.Runtime.InteropServices;
[DllImport("kernel32.dll")]
static extern IntPtr GetConsoleWindow();

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

const int SW_HIDE = 0x0;
const int SW_SHOW = 0x5;

public static void HideConsoleWindow()
{
    var handle = GetConsoleWindow();
    ShowWindow(handle, SW_HIDE);

}

请发布打开控制台窗口以执行某些工作的代码。请发布
void main()
没有的代码。一般来说,人们把答案作为答案贴出来。如果是猜测,可能只是注释:)但我需要关闭控制台,因为当套接字关闭时,我想关闭控制台,让用户在需要时再次打开控制台。你可以关闭套接字的句柄,然后清除控制台窗口,它将看起来像新的一样!