2013-05-30 147 views
0

這應該輸出到輸出窗口。但是,它不,我不知道爲什麼。當我在調試模式下運行它時,buffer =「*** NUM ADAPTERS = 2」,但它不會顯示在輸出窗口中。OutputDebugString - 不在輸出窗口中顯示

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); 

我是否缺少一些簡單的東西?

+0

您正在調試(F5)還是正在運行(ctrl + F5)?如果是後者,那就是你的問題 - 你只需要使用F5。 –

+0

@JerryCoffin然後它會在哪裏顯示? – Cypras

+1

在VS輸出窗口中。例如http://i1212.photobucket.com/albums/cc452/jcoffin01/debug_zpsf213d96a.png –

回答

1

當您使用調試器啓動程序,OutputDebugString的東西出現在輸出窗格(您可能需要切換到它,甚至選擇方案,從組合的輸出)。

外,您可以使用DebugView來收集輸出,當然這樣你將不得不通過PID過濾消息。

+0

以確保安全,請以管理員模式啓動DbgView – Abhinav