有没有办法在 WinForm 项目中写入控制台?
我知道我可以将项目类型更改为控制台并且仍然是 WinForm,但是如果我从 CMD 启动我的程序,则 CMD 的执行会停止,直到我的程序退出,如果我从控制台启动我的应用程序,则不会发生这种情况一个Winforms,但我无法写入控制台......
所以问题是:
如何在 WinForms 上写入控制台或如何在从 CMD 启动我的应用程序时不停止 CMD 的执行(以避免在 CMD 上为我的应用程序使用“Start / B”)。
有没有办法在 WinForm 项目中写入控制台?
我知道我可以将项目类型更改为控制台并且仍然是 WinForm,但是如果我从 CMD 启动我的程序,则 CMD 的执行会停止,直到我的程序退出,如果我从控制台启动我的应用程序,则不会发生这种情况一个Winforms,但我无法写入控制台......
所以问题是:
如何在 WinForms 上写入控制台或如何在从 CMD 启动我的应用程序时不停止 CMD 的执行(以避免在 CMD 上为我的应用程序使用“Start / B”)。
您可以使用AllocConsole将进程附加到新控制台。之后Console.WriteLine
应该按预期工作。该函数的 P/Invoke 签名是
[DllImport("kernel32")]
static extern bool AllocConsole();
但请注意,如果从您启动程序,您的程序cmd
将获得另一个控制台窗口,并且无法重复使用父控制台。但无论如何,我对你的理解是你的目标。