0

我试图为 mfc 应用程序打印一些日志到控制台

(因为,我想以 2 种方式执行这个应用程序。通常是 gui 方式和 cui 通过 'cmd',我不会执行子控制台)

我通过以下方式捕获“CXXXApp::InitInstance()”上的控制台参数

LPWSTR* argv = CommandLineToArgvW(GetCommandLineW(), &argc);

它运作良好,但是当我打印出如下消息时

fwprintf_s(stdout blah blah);
wprintf_s( blah blah);
std::wcout<<blah blah;
WriteConsole(GetStdHandle(STD_OUTPUT_HANDLE), blahblah);

任何东西都不适用于“cmd”

我想锁定一个标准输出和标准错误,但我找不到它


我想构建一个可以在 Windows 和控制台中运行的可执行应用程序。我做到了,但我无法在控制台上打印日志

4

1 回答 1

0

我不明白被问到的问题,我想也没有其他人,这就是为什么你没有收到任何回复。例如,“任何东西都不适用于'cmd'”是什么意思。

无论如何,如果您想要运行一个 GUI 应用程序(在 Windows 子系统中)并想要写入您启动该应用程序的控制台,或者如果您想要构建一个可以在 Windows 和控制台子系统中运行的可执行文件,您'不走运 - 它要么是一个,要么是另一个。有多种方法可以解决此限制,但在不知道您想要做什么的情况下,很难判断哪些方法适合您的情况。

于 2013-11-04T17:14:12.847 回答