Поиск по этому блогу

Показаны сообщения с ярлыком Delphi. Показать все сообщения
Показаны сообщения с ярлыком Delphi. Показать все сообщения

среда, 29 февраля 2012 г.

Справочники в списке

Компоненты:  TJvMemoryData (из JEDI), ADO
Работа со списками и объектами в них.
Для того, чтобы снять нагрузку с сервера баз данных и возложить ее на клиента, можно создать хранилище из кэшированных запросов. Пользователь не будет обращаться к базе всякий раз, когда ему придет в голову открыть справочник, вместо этого он поищет справочник сначала в кэше, а уж если там такового не оказалось, тогда он обратиться к базе.
Хранить запросы можно и на диске клиента, компонент TJvMemoryData позволяет без труда сохранять данные на диске и загружать их с диска. (реализация этой возможности достаточно тривиальна, я ее опустила). А этот код просто схематично демонстрирует работу подобного хранилища.

четверг, 23 июня 2011 г.

Обмен информацией между процессами vs WM_COPYDATA

Реализация IPC vs  WM_COPYDATA

Немного теории.
Сообщения WM_COPYDATA дают возможность обмениваться информацией между процессами. Обмен происходит через ядро (kernel). В принимающем процессе выделяется память (space) и удерживается для скопированных ядром данных. Отправитель обязан передать указатель на структуру с данными (COPYDATASTRUCT).
WM_COPYDATA
wParam = (WPARAM) (HWND) hwnd;   // дескриптор передающего окна
lParam = (LPARAM) (PCOPYDATASTRUCT) pcds;   // pointer COPYDATASTRUCT  - указатель на структуру с данными
Результат true - если принимающая программа обработала сообщение, false - нет.
Реализация.

Fix SOAPHTTPTrans.pas (D7)


Фикс D7 для корректного отображения progress'а загрузки от  Deepak Shenoy 2.2.2004
SOAPHTTPTransp.pas

среда, 22 июня 2011 г.

Delphi. Web службы SOAP

В этой статье.
Небольшая схема работы веб сервисов
Практическая реализация простого приложения
Передача файла с progress bar'ом

Сервисы - это модульные приложения, которые могут быть вызваны и опубликованы в инете.
Работа с ними ведется с помощью протокола SOAP - стандарт легковесного протокола обмена информацией (simple object protocol). Это протокол использует XML для кодирования удаленных вызовов процедур и использует коммуникационный протокол HTTP.

Приложения Web-служб публикуют информацию о том, через какой интерфейс они доступны и как осуществить их вызов с помощью документов WSDL.

понедельник, 20 июня 2011 г.

Delphi 2007 CGI приложение. Отправляем поток в формате utf-8

Этот код:
1. Кодирует обычную строку в utf-8
2. Помещает эту строчку в поток (stream)
3. И пишет этот поток в ответ (Response)
В результате клиент в браузере получает строчку Это данные из потока ...