Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ OutputDebugString-不显示在输出窗口中_C++_Directx - Fatal编程技术网

C++ OutputDebugString-不显示在输出窗口中

C++ OutputDebugString-不显示在输出窗口中,c++,directx,C++,Directx,这应该输出到输出窗口。然而,事实并非如此,我也不知道为什么。当我在调试模式下运行它时,buffer=“***NUM ADAPTERS=2”,但它不会显示在输出窗口中 UINT i = 0; std::vector<IDXGIAdapter*> vAdapters; while(dxgiFactory->EnumAdapters(i, &dxgiAdapter) != DXGI_ERROR_NOT_FOUND) { vAdapters.push_back(dxgi

这应该输出到输出窗口。然而,事实并非如此,我也不知道为什么。当我在调试模式下运行它时,buffer=“***NUM ADAPTERS=2”,但它不会显示在输出窗口中

UINT i = 0;
std::vector<IDXGIAdapter*> vAdapters;
while(dxgiFactory->EnumAdapters(i, &dxgiAdapter) != DXGI_ERROR_NOT_FOUND)
{
    vAdapters.push_back(dxgiAdapter);
    ++i;
}

char buffer[50];

sprintf_s(buffer, "***NUM ADAPTERS = %d", vAdapters.size());

OutputDebugStringA(buffer);
UINT i=0;
std::矢量可变适配器;
而(dxgiFactory->EnumAdapters(i和dxgiAdapter)!=DXGI\u错误\u未找到)
{
vAdapters.向后推(dxgiAdapter);
++一,;
}
字符缓冲区[50];
sprintf_s(缓冲区,***NUM ADAPTERS=%d”,vAdapters.size());
OutputDebugStringA(缓冲区);

我缺少一些简单的东西吗?

当您使用debugger启动程序时,OutputDebugString内容会出现在输出窗格中(您可能需要切换到它,甚至从组合框中选择程序的输出)


在外部,您可以使用来收集输出,当然,这样您就必须通过PID过滤消息。

您是在调试(F5)还是在运行(ctrl+F5)?如果是后者,那就是你的问题——你只需要使用F5。@JerryCoffin,那么它将显示在哪里?在VS输出窗口中。e、 例如,为了安全起见,请在管理模式下启动DbgView。在Visual Studio输出窗口或DebugView中显示输出是否正常,但不能同时在两者中显示?