Как продвинуть сайт на первые места?
Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.

Ускорение продвижения
Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.



Иллюстрированный самоучитель по Delphi 7 для профессионалов

Управление соединением

Соединение с хранилищем данных ADO открывается и закрывается при помощи свойства:

property Connected: Boolean;

…или методов:

procedure Open; overload;
procedure Openfconst UserlD: WideString; const Password: WideString); overload;

…и:

procedure Close;

Метод open является перегружаемым при необходимости использования удаленного или локального соединения. Для удаленного соединения применяется вариант с параметрами UserID и Password.

До и после открытия и закрытия соединения разработчик может использовать соответствующие стандартные методы-обработчики событий:

property BeforeConnect: TNotifyEvent;
property BeforeDisconnect: TNotifyEvent;
property AfterConnect: TNotifyEvent;
property AfterDisconnect: TNotifyEvent;

Кроме этого, компонент TADOConnection имеет дополнительные методы-обработчики. После получения подтверждения от провайдера о том, что соединение будет открыто, перед его реальным открытием вызывается метод:

TWillConnectEvent = procedure
(Connection: TADOConnection; var Connectionstring, UserlD, Password: WideString;
var ConnectOptions: TConnectOption;
var EventStatus: TEventStatus) of object;
property OnWillConnect: TWillConnectEvent;

Параметр Connection содержит указатель на вызвавший обработчик компонент.

Параметры Connectionstring, userID и Password определяют строку параметров, имя и пароль пользователя.

Соединение может быть синхронным или асинхронным, что и определяется параметром ConnectOptions типа TConnectOption:

type TConnectOption = (coConnectUnspecified, coAsyncConnect);

Где:

  • coConnectunspecified – синхронное соединение всегда ожидает результат последнего запроса;
  • coAsyncConnect – асинхронное соединение может выполнять новые запросы, не дожидаясь ответа от предыдущих запросов.

Наконец, параметр Eventstatus позволяет определить успешность выполнения посланного запроса на соединение:

type
TEventStatus = (esOK, esErrorsOccured, esCantDeny, esCancel, esUnwantedEvent);

Где:

  • esOK – запрос на соединение выполнен успешно;
  • esErrorsOccured – в процессе выполнения запроса возникла ошибка;
  • esCantDeny – соединение не может быть прервано;
  • esCancel – соединение было прервано до открытия;
  • esUnwantedEvent – внутренний флаг ADO.

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

procedure TForml.ADOConnectionWillConnect(Connection: TADOConnection;
var ConnectionString, UserlD, Password: WideString;
var ConnectOptions: TConnectOption;
var Eventstatus: TEventStatus);
begin if Eventstatus = esOK
then ConnectOptions: = coConnectunspecified;
end;

Кстати, параметр синхронности/асинхронности можно также задать при помощи свойства:

ConnectOptions property ConnectOptions: TConnectOption;
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.