ВУЗ:
Составители:
Рубрика:
- 49 -
end; { конец SendFullMsg }
Открытие и определение размера запрашиваемого файла осуществляется
процедурой OpenSendFile:
procedure TWbServe.OpenSendFile;
begin
{ установить флаг FileOpen в TRUE }
ibFileOpen := TRUE;
{ присвоить имя файла дескриптору файла }
AssignFile(TransferFile, isFileName);
{ выполнить сброс и открыть файл для считывания }
Reset(TransferFile);
{ Считать размер файла в переменную размеров файла }
ilFileSize := FileSize (TransferFile);
end; { конец OpenSendFile }
После открытия файла можно форматировать всю информацию о файле,
которую нужно отправить клиенту (функция FileSizeHeader выдает данные о
размере, а FileTypeHeader – о типе файла, FileHeader собирает эти данные вме-
сте):
function TWbServe.FileSizeHeader: String;
begin
{ Создать строку заголовка сообщения о размере файла }
FileSizeHeader := 'Content-Length: ' + IntToStr(ilFileSize) + #13#10;
end; { конец FileSizeHeader }
function TWbServe.FileTypeHeader: String;
var IsFileExt: String; IsFileType: String; liPosPeriod: Integer;
begin
{ Указать тип файла (по умолчанию это текст HTML) }
IsFileType := 'text/html';
{ Нати расширение в имени файла }
liPosPeriod := Pos(' .', isFileName);
if (liPosPeriod > 0) then
begin
{ Это файл типа .GIF или .JPEG ? На самом деле допустимых
типов файлов намного больше; в расширенную версию этой
функции следует включить их все }
IsFileExt := Copy(isFileName, (liPosPeriod + 1), 3) ;
if ((IsFileExt = 'gif') or (IsFileExt = 'GIF')) then { это GIF-файл }
IsFileType := 'image/gif';
if ((IsFileExt = 'jpg') or (IsFileExt = 'JPG')) then { это JPG-файл }
IsFileType := 'image/jpeg';
end; { конец SendFullMsg } Открытие и определение размера запрашиваемого файла осуществляется процедурой OpenSendFile: procedure TWbServe.OpenSendFile; begin { установить флаг FileOpen в TRUE } ibFileOpen := TRUE; { присвоить имя файла дескриптору файла } AssignFile(TransferFile, isFileName); { выполнить сброс и открыть файл для считывания } Reset(TransferFile); { Считать размер файла в переменную размеров файла } ilFileSize := FileSize (TransferFile); end; { конец OpenSendFile } После открытия файла можно форматировать всю информацию о файле, которую нужно отправить клиенту (функция FileSizeHeader выдает данные о размере, а FileTypeHeader – о типе файла, FileHeader собирает эти данные вме- сте): function TWbServe.FileSizeHeader: String; begin { Создать строку заголовка сообщения о размере файла } FileSizeHeader := 'Content-Length: ' + IntToStr(ilFileSize) + #13#10; end; { конец FileSizeHeader } function TWbServe.FileTypeHeader: String; var IsFileExt: String; IsFileType: String; liPosPeriod: Integer; begin { Указать тип файла (по умолчанию это текст HTML) } IsFileType := 'text/html'; { Нати расширение в имени файла } liPosPeriod := Pos(' .', isFileName); if (liPosPeriod > 0) then begin { Это файл типа .GIF или .JPEG ? На самом деле допустимых типов файлов намного больше; в расширенную версию этой функции следует включить их все } IsFileExt := Copy(isFileName, (liPosPeriod + 1), 3) ; if ((IsFileExt = 'gif') or (IsFileExt = 'GIF')) then { это GIF-файл } IsFileType := 'image/gif'; if ((IsFileExt = 'jpg') or (IsFileExt = 'JPG')) then { это JPG-файл } IsFileType := 'image/jpeg'; - 49 -
Страницы
- « первая
- ‹ предыдущая
- …
- 47
- 48
- 49
- 50
- 51
- …
- следующая ›
- последняя »