0

有没有办法在 WinForm 项目中写入控制台?

我知道我可以将项目类型更改为控制台并且仍然是 WinForm,但是如果我从 CMD 启动我的程序,则 CMD 的执行会停止,直到我的程序退出,如果我从控制台启动我的应用程序,则不会发生这种情况一个Winforms,但我无法写入控制台......

所以问题是:

如何在 WinForms 上写入控制台或如何在从 CMD 启动我的应用程序时不停止 CMD 的执行(以避免在 CMD 上为我的应用程序使用“Start / B”)。

4

1 回答 1

3

您可以使用AllocConsole将进程附加到新控制台。之后Console.WriteLine应该按预期工作。该函数的 P/Invoke 签名是

[DllImport("kernel32")]
static extern bool AllocConsole();

但请注意,如果从您启动程序,您的程序cmd将获得另一个控制台窗口,并且无法重复使用父控制台。但无论如何,我对你的理解是你的目标。

于 2013-04-29T04:36:18.580 回答