输出调试信息的两种方法

在开发中经常希望输出调试信息,我平时一般使用下面两种之一:

1.用dbgview.exe可以查看,在代码里写法如下

OutputDebugString(PChar(AMsg));

2.产生一个console窗口

  1. procedureTInfDebugInfoConsoleImpl.CloseConsole;
  2. begin
  3. if(FHandle<>INVALID_HANDLE_VALUE)then
  4. begin
  5. CloseHandle(FHandle);
  6. FHandle:=INVALID_HANDLE_VALUE;
  7. FreeConsole();
  8. end;
  9. end;
  10. procedureTInfDebugInfoConsoleImpl.OpenConsole;
  11. begin
  12. ifFHandle<>INVALID_HANDLE_VALUEthen
  13. Exit;
  14. AllocConsole;
  15. SetConsoleTitle('Debug');
  16. FHandle:=GetStdHandle(STD_OUTPUT_HANDLE);
  17. end;
  18. procedureTInfDebugInfoConsoleImpl.WriteInfo(constAMsg:string);
  19. var
  20. dwTmp:DWORD;
  21. str:string;
  22. begin
  23. if(FHandle<>INVALID_HANDLE_VALUE)then
  24. begin
  25. Str:=Format('%s'#13#10,[AMsg]);
  26. WriteConsole(FHandle,PChar(Str),Length(Str),dwTmp,nil);
  27. end;
  28. end;

你可能感兴趣的:(调试)