【问题标题】:Add console to existing MFC application将控制台添加到现有 MFC 应用程序
【发布时间】:2011-11-05 19:59:02
【问题描述】:

我正在与 2 位朋友在一个班级项目中制作一款 D&D 游戏。到目前为止,我一直在做角色创建工作并在命令行上大摇大摆。

现在我们正在合并或分开,我需要在控制台上输出任何掷骰子结果,并在另一个控制台上输出一些东西,这些东西必须成为主视图或选项卡,或者在需要输入/注意时被调用的任何东西。

问题是我还没有学过 MFC,因为我不需要它。制作一个示例 MFC 控制台,我可以提供给负责 GUI 的队友,这有多难?

谁能给我一些关于为 MFC 应用程序制作控制台以及如何为其提供输出和接收输出的说明?

【问题讨论】:

  • ::AlocConsole 和朋友们
  • 这只是让 cout 和 cin 打开控制台吗?我怎么会有 2 个控制台?我需要更多细节,而不仅仅是一个函数。
  • @Portaljacker:你不能拥有多个控制台窗口,除非你自己实现它。 cout 是否有效,试试看。我认为应该。
  • @Portaljacker:另请注意,我的是评论,而不是答案。我了解您需要的远不止这些。如果您知道 API 调用它,您应该在问题中提到它们 :)
  • 我今晚下班回家后试试。如果可行,我建议您将其作为答案,以便我可以给您一些代表。

标签: c++ visual-studio-2010 mfc


【解决方案1】:

首先,你不能。对于 Unix/Linux 和 Windows,都有一个控制台/进程限制。如果您想要另一个控制台,则必须创建另一个进程,在您发送和接收数据时写入和读取另一个控制台。

您可以使用 NamedPipe http://msdn.microsoft.com/en-us/library/windows/desktop/aa365590%28v=vs.85%29.aspx 在进程之间发送数据,CreateProcess() 函数允许您使用单独的控制台窗口创建进程。

或者,您可以在某些 GUI 中编写一个类似控制台的窗口。

【讨论】:

    猜你喜欢
    • 2012-01-27
    • 1970-01-01
    • 2015-03-03
    • 1970-01-01
    • 2015-08-30
    • 1970-01-01
    • 1970-01-01
    • 2012-04-09
    • 1970-01-01
    相关资源
    最近更新 更多