How do I use OutputDebugString to print a message that's in a string variable?

前端 未结 3 1516
感情败类
感情败类 2021-02-02 16:39

I recently had to do some changes in some Delphi code. Therefore, I have some basics questions:

  1. Generally, how do I output to the console?
  2. How do I output
相关标签:
3条回答
  • 2021-02-02 17:28

    You can write a wrapper function to take care of the variables passed to OutputDebugString as it expects a PChar.

    Something like:

    procedure DebugMsg(const Msg: String);
    begin
        OutputDebugString(PChar(Msg))
    end;
    

    There is a useful reference for debugging techniques here.

    And if your Delphi is a bit rusty there's the ever useful Delphi Basics site. I use it a lot :)

    0 讨论(0)
  • 2021-02-02 17:30

    If you have a console application, just use write() and writeln() global functions. If you have a GUI application and want to create a separate console windows, things go tricky (this article will guide you through the process, though it's in C++).

    0 讨论(0)
  • 2021-02-02 17:36

    In addition to the 2 answers you got about OutputDebugString() and WriteLn(), for debugging there is a better solution: CodeSite from Raize Software (see http://www.raize.com/DevTools/CodeSite/Default.asp ).

    If you have Delphi XE, that should already come with an somewhat reduced functionality version of CodeSite.

    0 讨论(0)
提交回复
热议问题