Модератор: Модераторы
Как увидеть отладочные сообщения?
В модуле LCLProc в LCL есть две процедуры для вывода отладочных сообщений. Они называются:
DebugLn: которая работает также, как WriteLn, но принимает только строки.
DbgOut: которая работает также, как Write, но принимает только строки.
В обычных условиях сообщения выводятся в stdout. Если stdout закрыт (например когда приложение {$AppType Gui} или откомпилировано с ключом -WG под Windows), сообщения не выводятся никуда.
Отладочные сообщение могут также выводится в файл. Код инициализации модуля LCLProc проверяет командую строку Lazarus.exe's на предмет наличия ключа '--debug-log=<file>'. Если этот ключ присутствует - весь последующий отладочный вывод направляется в <file>.
Если этого ключа нет, проверяется существование системной переменной окружения xxx_debuglog, где xxx - имя файла программы без расширения. Для Lazarus это будет lazarus_debuglog. Если такая переменная окружения существует, файл указанный в ней будет использован для вывода отладочных сообщений. Пример: если вы сделаете:
set lazarus_debuglog=c:lazarusdebug.txt
то отладочные сообщения будут выводится в c:lazarusdebug.txt.
Так как это реализовано в lclproc, любое приложение использующее lclproc может использовать этот механизм вывода отладочных сообщений.
Лекс Айрин писал(а):Если тихо, то у тебя, скорее всего, ошибка в инициализации (или отображении) формы.
[FORMS.PP] ExceptionOccurred
Sender=EAccessViolation
Exception=Access violation
Stack trace:
$000000000045182F
TApplication.HandleException Access violation
Stack trace:
$000000000045182F
exception at 000000000045182F:
Access violation.
CRobin писал(а):если сравниваются две переменная без присвоеного значения.
CRobin писал(а):я на вас расчитывал и в который раз не ошибся)))
Вернуться в Free Pascal Compiler
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21