Чтение онлайн

ЖАНРЫ

Советы по Delphi. Версия 1.4.3 от 1.1.2001

Озеров Валентин

Шрифт:

 showmessage('DONE.'); //Готово. Забирайте!

end;

end.

Из FIDO-переписки:

– New auto-created HomeNet area (555:172/89.2) ------------- HOME.PROGRAMMERS -

 Msg : 34 of 35

 From : Philip Bondarovich 555:172/445.43 Пнд 17 Янв 00 02:51

 To : Denis Guravski Втp 18 Янв 00 22:21

 Subj : UUE

– ------------------------------------------------------------------------------

 Wednesday January 12 2000 22:56, Denis Guravski писал All:

 DG> Люди , сpочно
нyжно описание сабжа .

=== Begin uuecode ===

– INT.PROGRAMMERS (256:172/43) ------------------------------ INT.PROGRAMMERS -

 Msg : 38 of 38 -36 Scn

 From : Monk 256:172/10 15 Jan 00 18:24:30

 To : Nikolay Severikov 16 Jan 00 03:47:50

 Subj : UU-code

– ------------------------------------------------------------------------------

 Жывi сабе памаленькy, /_*Nikolay*_/!

У чацьвэp Стyдзеня 13 2000 y 23:25, цёмнай ночкаю, Nikolay Severikov тайна пiсаў All, i я ўцягнyўся...

 NS> Расскажите плиз о сyбже... Как он кодиpyется.

Калi ласка.

=== Cut ===

1) Читаем из исходного хфайла 3 байта.

2) Разбиваем полyченные 24 бита (8x3=24) на 4 части, т.е. по 6 бит.

3) Добавляем к каждой части число 32 (десятичн.)

Примеp: Имеем тpи числа 234 12 76. Побитово бyдет так -

 11101010 00001100 01001100 pазбиваем и полyчаем -

 111010 100000 110001 001100 добавляем 32 -

+100000 +100000 +100000 +100000

 ------ ------ ------ ------

1011010 1000000 1010001 101100 или в бyквах -

Z @ Q ,

Вот собственно и все. В UUE файле в пеpвой позиции стоит кол-во закодиpованных

символов + 32. Т.е. вся стpока содеpжит 61 символ. 1 символ идет на кол-во.

Остается 60 символов _кода_. Если подсчитать, то мы yвидим, что для полyчения

60

символов кода необходимо 45 исходных символов. Для полной стpоки в начале стоит

бyква "M", а ее ASCII код = 77. 45+32=77.

=== Cut ===

 З павагай да ўсiх вас, Monk. Спадзяюся на пpацяг pазмовы, *Nikolay*!

...
– Папа, я есть хочy!
– Стыдись, сынок, в твои годы я хотел стать космонавтом!

– +- GoldED+/386 1.1.1.2

 + Origin: - Тавеpна BBS - 241-5714 23:00-6:00. Freqs allowed. (256:172/10)

=== End uuecode ===

WBR.

... Чешиpский Котенок лyчше всех

– -- GoldED+/W32 1.1.1.2

 * Origin: WonderLand (555:172/445.43)
 

ISAPI 

Почему мои ISAPI-ориентированные библиотеки, созданные в Delphi 3, не могут обрабатывать несколько соединений?

Nomadic отвечает:

Волшебник по созданию ISAPI DLL в Delphi 3 создает полностью безопасную многопоточную библиотеку, но не выставляет флаг, говорящий приложению, что эта библиотека в этом отношении безопасна. Это легко исправить, просто добавив строчку:

IsMultiThread := TRUE;

end;

первой строкой в Вашем блоке begin-end файла проекта (DPR).

Соединение 

Проверка URL

The_Sprite отвечает:

Данная функция позволяет Вам проверить существование определённого адреса(URL) в интернете. Естественно она может

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

URL может быть как с префиксом http:/ так и без него - эта функция добавляет префикс http:// если он отсутствует (необходимо для функции internetOpenUrl которая так же поддерживает FTP:// и gopher://

Эта функция проверяет только два возвращаемых кода '200'(ОК) или '302' (Редирект), но Вы можете заставить проверять функцию и другие коды. Для этого достаточно модифицировать строчку "result := ".

Платформа: Delphi 3.x (или выше)

uses wininet;

Function CheckUrl(url:string):boolean;

var

 hSession, hfile, hRequest: hInternet;

 dwindex,dwcodelen :dword;

 dwcode:array[1..20] of char;

 res : pchar;

begin

 if pos('http://',lowercase(url))=0 then url := 'http://'+url;

 Result := false;

 hSession := InternetOpen('InetURL:/1.0', INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);

 if assigned(hsession) then begin

hfile := InternetOpenUrl(hsession, pchar(url), nil, 0, INTERNET_FLAG_RELOAD, 0);

dwIndex := 0;

dwCodeLen := 10;

HttpQueryInfo(hfile, HTTP_QUERY_STATUS_CODE, @dwcode, dwcodeLen, dwIndex);

res := pchar(@dwcode);

result:= (res ='200') or (res ='302');

if assigned(hfile) then InternetCloseHandle(hfile);

InternetCloseHandle(hsession);

 end;

end;

Разное 

Объект DocInput

Delphi 2 

Тема: Объект DocInput: свойства и методы

Объект DocInput — объект из пакета Internet Solutions Pack фирмы NetManage, поставляемого в составе Delphi 2.01. Он предназначен для описания входной информции для документа, передаваемого элементу управления. Все элементы управления для работы с Интернетом, имеющиеся в данном пакете, имеют доступ к объекту через соответствующее свойство, могут хранить в нем документы и передавать его от одного элемента управления другому. Объект DocInput имеет следующие свойства:

BytesTotal, BytesTransferred, DocLink, FileName, Headers, PushStreamMode, State и Suspended.

BytesTotal — счетчик общего количества байт передаваемого элемента. Значение по умолчанию и начальное значение равно нулю. Тип данных — Long. Данное свойство времени выполнения и только для чтения. Значение данного свойства получается из свойства заголовка "content-length" (длина содержимого). Это значение используется элементом управления для определения размера (объема) передаваемой информации. С помощью него также возможно управление буфером, который вы используете для "сборки" данных после их передачи.

Свойство BytesTranferred является свойством, передаваемым вам при наступлении события OnDocInput. Данное свойство времени выполнения, только для чтения и имеет тип long. При начале новой передачи значение свойства обнуляется. Обновляется в начале события OnDocInput. Значение данного свойства отражает величину последней передачи, когда другие передачи не осуществлялись. Свойство BytesTransferred может использоваться для показа линейки прогресса или для утверждения того, насколько фактически переданный размер соответствует ожидаемому.

Свойство DocLink сообщает получающему элементу управления о том, что источник не будет посылать документ через поток данных или входной файл. Оно ссылается на свойство DocOutput.DocLink, которое становится источником при передаче данных. Данное свойство является read/write-свойством (для чтения и записи) и доступно только во время выполнения программы. Свойство имеет тип DocLink. Это строковый тип, имеющий значение по умолчанию ''. Если значению данного свойства присваивается величина, отличная от '', свойство FileName автоматически устанавливается в ''. Данное свойство используется для определения источника, являющегося internet-компонентом с указывающим на объект свойством DocOutput.DocLink, т.е. они используются в парах.

Поделиться с друзьями: