当前位置: 代码迷 >> C++ >> 怎么把DLL里的输出文本显示在控制台中
  详细解决方案

怎么把DLL里的输出文本显示在控制台中

热度:4569   发布时间:2013-02-26 00:00:00.0
如何把DLL里的输出文本显示在控制台中
我现在有个DLL库,之前用于控制台程序工程的,里面有很多printf()的标准输出提示信息,我现在的是win32工程,要用到这个DLL库进行开发,问题是现在如何在调试win32时把DLL库里的标准输出信息显示在一个控制中,以方便调试?

------解决方案--------------------------------------------------------
win32调试信息要输出到控制台, 那比较复杂的.
还是输出到DebugView中吧.

调用OutputDebugString,即可把信息输入到DebugView软件中了. 非常好用的东西.

------解决方案--------------------------------------------------------
注意OutputDebugString 不是宏,是函数, 所以工程Debug或者Release对它都没有影响, 只要你调用了OutputDebugString就会输出到DebugView中, 不管你的程序是Debug模式生成的,还是Release格式生成的.

只不过, 你在 F5 "单步调试" 的时候会输出到VC/VS中的 Debug View窗口中. 而不输出到DebugView软件中.
------解决方案--------------------------------------------------------
AllocConsole();  
freopen_s(&fp,"conout$","w",stdout);    //打开控制台   
setlocale(LC_ALL,"chs");
win32应用程序也可以打开控制台。这是vs2010中的,如果是vc6,把freopen_s改成freopen
------解决方案--------------------------------------------------------
AllocConsole、AttachConsole、WriteConsole、ReadConsole、、、
win32下同样可以用控制台。
  相关解决方案