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

Рассылка сайта Delphi coding

  Все выпуски  

Рассылка сайта Delphi coding 'Рассылка сайта Delphi coding' (01.10.05)


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

Рассылка сайта Delphi Coding

Выпуск от 02 Ноября 2005 года. Noil.pri.ee

Приглашаються авторы статей для сотрудничества с сайтом. Подробности о том как добавить свою статью на сервер читайте здесь

На сайте Delphi Coding собрано большое количество статей, книг и различной компьютерной документации. В рассылке вы сможете увидеть последнии поступления на сайте, а также более подробно ознакомиться с некоторыми материалами.

Желаем Вам приятного чтения.


Архивы статей по различным тематикам Delphi

Коллекции статей

Коллекция статей № 1Скачать (Статей: 20)
Коллекция статей № 2Скачать (Статей: 20)
Коллекция статей № 3Скачать (Статей: 20)
Коллекция статей № 4Скачать (Статей: 20)

Последнии файлы

mIRC v6.16 в категории Программы

mIRC - это IRC клиент. IRC - это Internet Relay Chat, некая сеть, предназначенная специально для общения в реальном масштабе времени. mIRC является, пожалуй, самой известной программой в своем роде. Все что нужно для того, чтобы начать общаться, это соединиться с сервером и присоединиться к каналу. Названия серверов и некоторых каналов уже заложены в mIRC. По умолчанию выбор сервера происходит случайным путем. Далее все просто - выбираем канал и начинаем общаться. В правой части окна список присутствующих в канале людей, а в левой - сообщения. Можно общаться с отдельным человеком или вообще создать свой канал и стать там самым главным. Кроме основных функций, фактически являющихся оболочкой серверных команд, mIRC предоставляет огромное количество различных побочных, например, запуск script-ов при соединении с сервером или фильтрация действий flooders (людей которые умышленно захламляют каналы).

Подробнее... Скачать


Физикум-0 Версия 1.3.00/DN(пробная версия) в категории Программы от Noil-Team

Программа "Физикум - 0" предназначалась для ускорения решения расчётных задач по физике за курс средней школы.

Своего рода физический калькулятор с потенциальной возможностью решения задач со "звёздочкой" при грамотном его использовании.

Не исключена возможность использования его как универсального решебника расчётных задач по физике, так как программа не только выдаёт результаты, но и показывает с помощью каких формул можно их получить и в какой последовательности их применять.

Удобный и понятный интерфейс программы превращает решение задачи в приятное и интересное времяпрепровождение.


Физикум специально оптимизирован под решение задач именно таких, какие установлены Министерством образования РФ. Так как темы в учебниках по физике разных стран не совсем совпадают. Так, что это программа больше направлена на Российские учебники.

Пока программа решает расчётные задачи школьного типа за 7, 8, 9 классы.
ВНИМАНИЕ!!! Данная демо-версия является пробно-ознакомительной и не имеет возможности регистрации. Она будет работать до 1 декабря 2005 года. Ждите, скоро выйдет окончательная версия программы.





В последующих версиях планируется:

а) решение задач по физике с 7 по 11 класс.

б) решение задач по физике в ВУЗах на не физических специальностях.

в) + решение расчётных задач по химии.

г) внедрение системы "Гибкость" для более результативного решения задач со "звёздочкой".

д) улушение и усиление математического аппарата программы.

е) исправление замеченых Вами ошибок и реализации Ваших предложений (рекомендации, пожелания и сообщения о замеченых ошибках в месте с условием задачи посылать на fizikum@gmail.com).

ж) внедрение графического решателя задач и графикопостроителя.

з) появления возможности осуществлять печать на принтере подключеном к USB.

к) появление возможности ввода данных не в системе СИ.

л) и другое :)





С вопросами о приобретении права продаж программы обращайтесь на e-mail fizikum@gmail.com или на форум сайта www.noil.pri.ee

Подробнее... Скачать


Как модифицировать Системное меню и показать диалог ShellAbout в категории Система

Приме показывает, как модифицировать Системное Меню формы (изменять, удалять, добавлять пункты меню) во время выполнения, а также пример показа диалога ShellAbout (Как в стандартных программах Windows)

Полная функциональность.
Исходный код.


Поддерживаемые версии: D1 D2 D3 D4

Автор: UtilMind Solutions

Подробнее... Скачать


Как принимать перетащенные файлы из Windows Explorer v.1.0 в категории Система

Этот небольшой пример показывает, как реагировать Вашему приложению на перетащенные из проводника Windows файлы. Перетащенные файлы загружаются к компонент TMemo, а соответствующая им иконка загружается в компонент TPicture.

Полная функциональность.
Исходный код.
Пример приложения.


Поддерживаемые версии: CB1 CB3 CB4 D2 D3 D4

Автор: Upscene Productions

Подробнее... Скачать


Вызов функций из Dll. в категории Система

Из этого примера Вы можете узнать, как вызывать функции из динамических библиотек, как использовать некоторые API функции, как использовать exe файлы в качестве Dll и многое другое.

Полная функциональность.
Исходный код.


Поддерживаемые версии: D3

Автор: Alexey Novosselov

Подробнее... Скачать


TodMacOSCaption v.1.0 в категории Пользовательский интерфейс

Этот компонент создаёт заголовки форм в стиле MAC OS

Полная функциональность.
Исходный код.


Поддерживаемые версии: D6

Подробнее... Скачать


s.m.a.r.t monitor v.1 в категории Модули

Этот модуль показывает, как получить данные (такие как температура и …) со s.m.a.r.t HDD.

Полная функциональность.
Исходный код.


Поддерживаемые версии: D7

Автор: Siamak Arbatani

Подробнее... Скачать


Get Symbols Table v.1.0 в категории Система

Приложение позволяет показать шрифты Windows в различных таблицах шрифтов

Полная функциональность.
Исходный код.
Пример приложения.


Поддерживаемые версии: D3 D4

Автор: Max Zabalov

Подробнее... Скачать


Desktop Sprite Demo v.1.51 в категории Система

Пример показывает, как создать анимированного эльфа на рабочем столе компьютера, использую прямой метод рисования на холсте рабочего стола.

Полная функциональность.
Исходный код.
Пример приложения.


Поддерживаемые версии: D2 D3 D4

Автор: Nelson Chu

Подробнее... Скачать


Desktop Icons Positon v.1 в категории Система

Небольшая программа (исходный код включён) для установки/перемещения иконок на рабочем столе. Только для Windows XP

Автор выражает благодарность Антонии Баратта и Александру Краменко за предоставленные модули.

Полная функциональность.
Исходный код.


Поддерживаемые версии: D7

Автор: William Bouter

Подробнее... Скачать


Статья

Запись сообщений в журнал событий Windows на Delphi

Приложение может записывать сообщения в журнал используя следующие функции WinAPI. Подробное описание параметров этих функций содержится в документации к API.
RegisterEventSource - Открывает handle для доступа к журналу на локальной или удаленной машине.
ReportEvent - Собственно записывает сообщение.

Для записи сообщений в журнал в упрощенной манере просто произведите вызов RegisterEventSource с именем машины (UNC), в журнал которой вы хотите поместить сообщение (nil для локальной машины), и именем события. Имя события это обычно имя приложения, но может быть чем-то более информативным. Как только источник событий зарегистрирован, можно записывать события при помощи ReportEvent с handle, который вернула RegisterEventSource.

Листинг 1. Пример
VAR EventLog:THandle;
EventLog:=RegisterEventSource(nil,PChar('‌MyApplication'‌));

VAR MyMsg:Array[0..2] of PChar;
MyMsg[0]:='‌A test event message'‌;

ReportEvent(EventLog,EVENTLOG_INFORMATION_TYPE,0,0,nil,1,0,@MyMsg,nil);


Однако текст сообщения, записанного в журнал будет предварен текстом: "The description for Event ID ( 0 ) in Source ( MyApplication ) cannot be found. The local computer may not have necessary registry information or message DLL files to display messages from a remote computer. The following information is part of the event:" (Не найдено описание для события с кодом ( 0 ) в источнике ( MyApplication ). Возможно, на локальном компьютере нет нужных данных в реестре или файлов DLL сообщений для отображения сообщений удаленного компьютера. В записи события содержится следующая информация:) (Замечание: Это сообщение специфично для Windows2000 и может немного отличаться на других версиях). Для предотвращения появления этого текста необходимо внести в реестр некоторые ключи, как показано ниже, и определить строковые ресурсы (это может быть выполнено любым компонентом вашего приложения, не обязательно приложением, которое будет записывать события). Соответствующие записи реестра описаны ниже. Примеры кода предполагают, что строковые ресурсы и категории расположены в том же исполняемом файле, который содержит программу, записывающую события. Ключи категорий являются опциональными. Смысл этих ключей реестра и строковых ресурсов в том, что журнал событий использует строку, а приложение записывает в журнал в виде форматированного аргумента, и журналу необходимо знать, где находится описатель формата для этой строки. Кроме того, в журнале может храниться информация о категории события, полезная для просмотра событий. Это удобнее, чем просто отображать множество однотипный событий "Нет". Самый простой определитель формата это %1, который просто передаст в журнал входную строку. Для более подробного изучения определителей формата см. API документацию для FormatMessage.
Ключи реестра

Создайте следующий ключ реестра:

HKEY_LOCAL_MACHINESYSTEM - CurrentControlSet - Services - Eventlog - Application -

Имя приложения AppName должно совпадать с именем источника, использованного при вызове RegisterEventSource, потому что просмотрщик событий будет использовать это имя для отыскивания событий.

Создайте следующие ключи:



Имя ключа ТипОписание
CategoryCount (Optional)Integer Количество категорий событий, которые вы собираетесь использовать. (Это максимальная величина, и не будет проблем, если не все категории на самом деле будут применяться).
CategoryMessageFile (Optional)StringФайл, содержащий ресурсы строк категорий.
EventMessageFileStringФайл, содержащий ресурсы строк событий.
TypesSupportedIntegerДопустимые типы событий.


Листинг 2. Пример кода для создания необходимых записей в реестре
VAR
Reg:TRegistry;
RegKey:String;
AppPath:String;
AppName:String;
NumCategories:Integer;

Begin
Reg:=TRegistry.Create;
Try
AppPath:=Application.ExeName;
AppName:='‌MyApplication'‌;
NumCategories:=2;
RegKey:=
Format('‌SYSTEMCurrentControlSetServicesEventLogApplication%s'‌,[AppName]);
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey(RegKey,True);
// Собственное имя
Reg.WriteString('‌CategoryMessageFile'‌,AppPath);
// Собственное имя
Reg.WriteString('‌EventMessageFile'‌,AppPath);
// Максимальное количество категорий
Reg.WriteInteger('‌CategoryCount'‌,NumCategories);
// Разрешаем все типы
Reg.WriteInteger('‌TypesSupported'‌,EVENTLOG_SUCCESS or
EVENTLOG_ERROR_TYPE or
EVENTLOG_WARNING_TYPE or
EVENTLOG_INFORMATION_TYPE);
Reg.CloseKey;
EventLog:=RegisterEventSource(nil,PChar(AppName));
Finally
Reg.Free;
End; //try..finally

End;


Сообщение и ресурсы категорий.

Информация, помещаемая в реестр вышеприведенным кодом, информирует журнал событий о том, где искать строки событий и категорий, основываясь на имени источника, которое использует приложение для записи в журнал. И, как мы уже говорили, чтобы журнал событий искал эти строки в нашем исполняемом файле, нам нужно включить эти строковые ресурсы в наш файл. Этот процесс состоит из следующих шагов:
Написание исходного файла таблицы сообщений (файл .mc).
Компиляция .mc файла при помощи Microsoft message compiler.
Подключение получившейся информации к нашему Delphi приложению.

Есть много примеров по написанию .mc файлов в Windows SDK и на различных сайтах, включая MSDN, однако документация не достаточно проста, поэтому приводим минимально достаточное описание для создания файла таблицы сообщений:

Листинг 3. Код Delphi/Pascal
;//Example Message source file exmess.mc
MessageId=0
Language=English
%1
.

MessageId=1
Language=English
Category1
.

MessageId=2
Language=English
Category2
.


Строки, начинающиеся с ;// являются комментариями и не компилируются. Этот пример содержит три строковых ресурса - один определитель формата сообщения и две категории, хотя файл может содержать только первый ресурс. Каждый ресурс отделен одной отдельной точкой на строке, так же, как и в конце файла. Если в конце файла отсутствует перевод строки после точки, то файл не будет скомпилирован. Первая строка каждого ресурса является MessageID (index), при помощи которого приложение будет обращаться к строке. Следующая строка указывает язык ресурса. В нашем случае "English" - означает international English, язык по умолчанию для всех Windows платформ. Информацию по многоязыковым ресурсам см. в справке к компилятору ресурсов. Последняя строка определяет собственно текст сообщения. В случае ресурса 0, строка будет "%1", что означает, что передается сама строка. Если, например, нужен префикс сообщения "An Event Message" (Сообщение события), то строка будет иметь вид: "An Event Message %1". Более полное описание форматов см. в API справке по FormatMessage и компилятору ресурсов. Ресурсы категорий не требуют форматированных аргументов. Как видно в примере, мы определили две категории "Category1" и "Category2". Следующий этап - компиляция .mc файла при помощи Microsoft message compiler (mc.exe), который можно взять у Microsoft (входит в состав Platform SDK). Наш пример, имеющий имя "exmess.mc" может быть скомпилирован из командной строки таким образом:

Mc exmess.mc

В результате получаем три файла: exmess.rc, bin00001.msg и exmess.h. emess.h может быть использован как заголовочный файл для обращения к ресурсам по их символическим именам, если таковые указаны (в нашем примере нет). .bin файл это откомпилированный бинарный ресурс с сообщениями, .rc это файл ресурсов Windows. Он может быть откомпилирован в Delphi .res файл при помощи brcc32.exe - компилятора ресурсов Delphi или просто добавлен в проект при помощи project manager, и тогда Delphi автоматически его откомпилирует при компиляции проекта (build).

Запись событий с категориями.

Теперь наше приложение имеет ресурсы и необходимые записи в реестре или код, который их внесет. Значит, приложение может записывать события в журнал без сообщения об отсутствии ресурсов и с добавочным индексом категории события:

Листинг 4. Код Delphi/Pascal
VAR EventLog: THandle;
EventLog:=RegisterEventSource(nil,PChar('‌MyApplication'‌));

VAR MyMsg:Array[0..2] of PChar;
MyMsg[0]:='‌A test event message'‌;

ReportEvent(EventLog, EVENTLOG_INFORMATION_TYPE,1,0,nil,1,0,@MyMsg,nil);


Вышеприведенный код запишет событие в журнал с текстом "A test event message" и, потому что 1 следует за параметром EventLogType, это будет событие категории "Category1". Это достигнуто указанием 0 в качестве идентификатора события, который соответствует определителю формата в ресурсе 0 ("%1"). В результате текст сообщения события будет передан без изменения. Точно так же, категория указана 1, что соответствует "Category1" в нашем ресурсе 1. Журнал событий поддерживает "живую связь" с файлами сообщений и категорий, указанных в реестре, что означает, что когда пользователь захочет просмотреть журнал, просмотрщик событий получит доступ к файлам ресурсов для детального отображения событий. Это также означает, что если вы создадите множество событий, при помощи указанного файла ресурсов, и, затем, измените значения в файле ресурсов и произведете обновление (refresh) в просмотрщике событий, тексты событий и номера категорий так же изменятся в соответствии с ресурсами. Точно так же, если файл ресурсов вдруг будет удален или записи в реестре будут уничтожены или повреждены, то журнал не сможет получить доступ к ресурсам, и отобразит сообщение с ошибкой в виде префикса события, как было описано в начале статьи. В этом случае вместо номера категории события будет отображен индекс категории.


Автор: c "FMI Solutions" 2002
http://www.fmisolutions.com
Перевод: Digimaster 2005

Посетите наши форумы:

Delphi, Kylix, Pascal
Delphi - общие вопросы | WinAPI | Работа с сетью | Delphi и Multimedia | Базы данных | Работа с oc Windows | Курилка | Паскаль | Delphi.Net | Kylix

Языки программирования
C++ | Java | .NET | Ассемблер

Web Технологии
Php | Perl | Asp | Html

Програмное обеспечение
Софт для Windows | Oc Windows | Linux | BSD

Разное
Железо | Взлом и защита | Периферия | Внекомпьютерная жизнь | Объявления

Дружественные рассылки

Рассылки Subscribe.Ru
Интернет для Delphi-программиста

На этом позвольте проститься с Вами и пожелать удачи. Свои замечания и предложения отправляйте на е-майл, указанный ниже. С уважением, Виталий (NoilTeam@gmail.com)

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphicoding
Архив рассылки
Отписаться
Вспомнить пароль

В избранное