Главная Фотки Сказка Программизмы Гостевая | English |
Отладка приложений с использованием LogViewСпособ №1. Обыкновенный.В программу, из которой требуется кидать в лог сообщения включаем файл Log2View.h (находится в LogView.API)при необходимости включения логгирования: #define LOGGING_ON #include <Log2View.h>В программе можно использовать следующие макросы: // Вывод форматированной строки в лог. В этом варианте не понимает формат типа %f LOG2VIEW(LPCTSTR format, ...) // Вывод координат RECT'a, szName наименование прямоугольника в виде '%s left=%d top=%d right=%d bottom=%d' LOG2VIEW_RECT(LPCTSTR szName, const RECT rc) // Вывод GUID'a в текстовом виде, szName наименование также выводит ProgID если это возможно LOG2VIEW_GUID(LPCTSTR szName, const GUID guid) // Вывод сообщения для GetlastError LOG2VIEW_LASTERROR() // Вывод RGB по компонентам LOG2VIEW_RGB(cr)Пример использования (см. TestLogView) // TestLogView.cpp : Defines the entry point for the console application. // #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { LOG2VIEW(TEXT("Start TestLogview...\r\nargc=%d"), argc); for (int i = 0; i < argc; i++) LOG2VIEW(argv[i]); return 0; } Способ №2. Свой собственный.Делаем все тоже самое что в способе №1 реализовано макросами. Алгоритм приблизительно следующий:
HWND hwndLog = FindWindow(NULL, TEXT("LogView")); // окно LogView if (hwndLog) { // нашли TCHAR *buffer = TEXT("Test Message!!!\r\n"); // если не добавим \r\n, следующее сообщение будет на той же строке, некрасиво COPYDATASTRUCT str; #ifdef _UNICODE str.dwData = 1; // 1 если текст в буффере Unicode #else str.dwData = 0; // 0 если текст в буффере ANSI #endif str.cbData = (lstrlen(buffer)+1)*sizeof(TCHAR); // размер буффера в байтах str.lpData = (void *)buffer; // Буффер ::SendMessage(hwndLog, WM_COPYDATA, NULL, (LPARAM)&str); // Отправляем } Способ №3. VBScript, JScript etc.Можно пользоваться LogView и в скриптах. Для этого регистрим сервер LogViewSrv.dll. Создаем в скрипте объект с классом LogView.LogWindow. У этого объекта имеется единственный метод Log(BSTR LogString), параметр LogString строка для вывода в лог.Пример кода: set objLogger = CreateObject("LogView.LogWindow") objLogger.Log("Hello from script!!!!") Предолжения и замечания принимаются, пользуйтесь на здоровье! Наверх Программизмы |
ICQ UIN:63179813
(Добавить меня,
Сообщение для меня) e-mail: Александр Алексеев |
© 2002-2006 Александр Алексеев |