在开发中经常希望输出调试信息,我平时一般使用下面两种之一:
1.用dbgview.exe可以查看,在代码里写法如下
OutputDebugString(PChar(AMsg));
2.产生一个console窗口
- procedure TInfDebugInfoConsoleImpl.CloseConsole;
- begin
- if (FHandle <> INVALID_HANDLE_VALUE) then
- begin
- CloseHandle(FHandle);
- FHandle := INVALID_HANDLE_VALUE;
- FreeConsole();
- end;
- end;
- procedure TInfDebugInfoConsoleImpl.OpenConsole;
- begin
- if FHandle <> INVALID_HANDLE_VALUE then
- Exit;
- AllocConsole;
- SetConsoleTitle('Debug');
- FHandle := GetStdHandle(STD_OUTPUT_HANDLE);
- end;
- procedure TInfDebugInfoConsoleImpl.WriteInfo(const AMsg: string);
- var
- dwTmp: DWORD;
- str: string;
- begin
- if (FHandle <> INVALID_HANDLE_VALUE) then
- begin
- Str := Format('%s'#13#10, [AMsg]);
- WriteConsole(FHandle, PChar(Str), Length(Str), dwTmp, nil);
- end;
- end;