dll工程如何调试,win32.dll

  dll工程如何调试,win32.dll

  在MFC项目(包括单文档、多文档、基于对话框、MFC DLL等)中调试程序时,可以使用Trace宏输出相关变量的值。).在Win 32项目中(包括Win32应用程序和Win 32DLL),只能使用OutputDebugString函数输出相关变量的值。不过我觉得OutputDebugString相比trace宏有很大的不足。OutputDebugString不能像trace宏一样是打印格式,只能输出字符串。更糟糕的是,Win 32项目无法使用MFC的CString类来构造打印格式字符串。为此我在网上搜了一些资料,找到了一个Win32打印格式的方法,就是构造一个类似C语言的printf函数DebugString。具体代码如下:

  #ifdef _DEBUG

  void WINAPI DebugString(LPCSTR格式,)

  va _ list arglist

  char缓冲器[10];

  va_start (arglist,format);

  vsprintf(buffer,format,arglist);

  va _ end(arglist);

  strcat(buffer,/t );

  OutputDebugString(缓冲区);

  #endif

  代码描述:

  Char buffer[10]是打印格式字符串的长度,要根据你要输出的变量值合理设置,strcat(buffer,/t );//调用此函数后,在输出窗口中输出字符串,跳转到下一个制表符位置,可以用换行符替换。

  测试代码:

  #包含windows.h

  #包含stdio.h

  #ifdef _DEBUG

  void WINAPI DebugString(LPCSTR格式,)

  va _ list arglist

  char缓冲区[1024];

  va_start (arglist,format);

  vsprintf(buffer,format,arglist);

  va _ end(arglist);

  strcat(buffer,/n );

  OutputDebugString(缓冲区);

  #endif

  int main(int argc,char* argv[])

  int I;

  for(I=0;我我)

  DebugString(Hello: %d ,I);

  返回0;

  参考资料:

  055-79000作者:甘昆萧艺

  http://www.vckbase.com/bbs/prime/viewprime.asp?id=611

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • windows10缺少dll文件,win10运行时出错无法找到指定dll库文件
  • ,,详解VS2019 dumpbin查看DLL的导出函数
  • ,,解决采集时出现msxml3.dll 错误的方法
  • ,,使用 JScript 创建 .exe 或 .dll 文件的方法
  • ,,VC++ loadlibrary()加载三方dll失败, 返回错误码-126的解决方法
  • .net dll加密,c++ dll 反编译
  • .net dll加密,c++ dll 反编译,保护.net中的dll文件方法(防止破解、反编译dll)
  • .dll是什么文件能不能删除,文件dll怎么删除
  • dll没有在指定的windows上运行,xlivedll没有在windows上运行
  • 删除linkinfo.dll操作无法完成,因为已经在打开,linkinfo.dll是病毒吗
  • python能封装成dll文件吗,python自己封装的类怎么调用
  • 无法定位序数4445于动态链接库libcurl.dll,无法定位序数4445于动态链接库
  • d3dx9-43.dll文件丢失,d3dx9_41.dll文件丢失
  • igfxsrvc.exe木马病毒,igfxsrvc.dll加载失败_1
  • 怎么用360修复dll文件,360 dll文件修复
  • 留言与评论(共有 条评论)
       
    验证码: