Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Программирование на Delphi. От новичка до профессионала! 18.8 Протокол событий, функция OutputDebugString


Информационный Канал Subscribe.Ru


18.8 Протокол событий, функция OutputDebugString

В Delphi предусмотрена возможность просматривать протокол сообщений о событиях, происходящих в процессе выполнения приложения в режиме отладки. Протокол этих сообщений вы можете посмотреть в процессе выполнения или после его окончания, выполнив команду View | Debug Windows | Event Log или нажав клавиши Ctrl-Alt-E. В открывшемся окне Event Log вы увидите протокол событий. Щелкнув в этом окне правой кнопкой мыши, вы можете сохранить этот протокол в файле, прокомментировать его, очистить.

Какие именно сообщения отображаются в этом окне определяется настройкой отладчика. Для пользователей, не слишком сведущих в системном программировании, можно рекомендовать ограничиться сообщениями о точках прерывания и сообщениями, генерируемыми функцией OutputDebugString. Об этой функции надо сказать особо. Это функция API Windows, определенная следующим образом:

OutputDebugString(lpOutputString: PChar);

Её параметр lpOutputString является указателем на строку текста с нулевым символом в конце. Функция OutputDebugString в процессе отладки выдает сообщение, которое вы можете наблюдать в окне протокола сообщений о событиях Event Log. Но если отладчик отключен или если выполняемый модуль вашего приложения запускается непосредственно, а не из среды Delphi, то функция OutputDebugString ничего не делает. Таким образом, вы можете внести в разных местах своего приложения вызовы OutputDebugString с соответствующими сообщениями, которые покажут вам ход выполнения приложения в режиме отладки. А когда вы или другие пользователи впоследствии запустят приложение в обычном режиме, наличие в нем вызовов ничем не помешает, кроме очень незначительных затрат времени и незначительного увеличения объема модуля.

Вы можете опробовать этот инструмент в тестовом приложении, рассмотренном ранее, вставив, например, в конце процедуры TForm1.Button1Click оператор

OutputDebugString (PChar ('Окончане цикла: А = ' + Edit1 .Text));

Начиная с Delphi 5, по-видимому, роль функции OutputDebugString упала, поскольку теперь можно встраивать в точки прерывания сообщения, появляющиеся в окне Event Log. Такой способ задания сообщений проще, так как вообще не требует записи никакого кода.

 

Сайт рассылки http://mydelphi7.narod.ru, на котором есть архив рассылки, также гостевая книга, переводчик.

Копировать, размещать, продавать представленную информацию запрещается.

 

Rambler's Top100



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное