Как использовать OutputDebugString для печати сообщения в строковой переменной?
Недавно мне пришлось внести некоторые изменения в некоторый код Delphi. Поэтому у меня есть несколько основных вопросов:
- Как я могу вывести на консоль?
- Как вывести на консоль с помощью
fx
, строковой переменной?
Я начал использовать OutputDebugString, но я не мог заставить его работать с переменной.
Ответы
Ответ 1
Вы можете написать функцию обертки, чтобы позаботиться о переменных, переданных в OutputDebugString
, поскольку она ожидает PChar.
Что-то вроде:
procedure DebugMsg(const Msg: String);
begin
OutputDebugString(PChar(Msg))
end;
Существует полезная ссылка на методы отладки здесь.
И если ваш Delphi немного ржавый, там всегда полезный сайт Delphi. Я использую его много:)
Ответ 2
В дополнение к двум ответам, которые вы получили о OutputDebugString() и WriteLn(), для отладки есть лучшее решение: CodeSite от Raize Software (см. http://www.raize.com/DevTools/CodeSite/Default.asp).
Если у вас есть Delphi XE, это уже должно иметь несколько уменьшенную функциональную версию CodeSite.
Ответ 3
Если у вас есть консольное приложение, просто используйте функции write() и writeln() global. Если у вас есть приложение GUI и вы хотите создать отдельные окна консоли, все будет сложно (эта статья проведет вас через этот процесс, С++).