Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2003.02.24;
Скачать: [xml.tar.bz2];

Вниз

Докачка файла по сети!   Найти похожие ветки 

 
Chak   (2003-01-01 16:51) [0]

Собственно интересует вопрос добавления в конец файла недостающей его части. Использую TFileStream.
У меня в итоге размер файла получается идентичным с исходным его размером, а при попытке его открытыя(ну допустим Врдовского документа) выдается ошыбка что путь к файлу неверен.
вот пример того что я использую:


...
s:= Socket.ReceiveText;
...
If FileExists("c:\tmp\test.doc") Then
fs:= TFileStream.Create("c:\tmp\test.doc", fmOpenWrite);
try
fs.Seek(0,soFromEnd);
fs.WriteBuffer(s[1], Length(s));
finally
fs.Free;


 
Cobalt   (2003-01-01 18:04) [1]

Попробуй делать "откат" на сколько-то КБ (смотри в TFileStream, какими порциями он читает)


 
Chak   (2003-01-01 20:47) [2]

==> Cobalt © (01.01.03 18:04)

непонятно както,
ведь в результате размер получается идентичным, а просматриваю (ну допустим текстовый документ) блокнотом - весь текст в норме, и открыветтся без проблем, а вот вордовский нет!

И если файл копируется с первого раза(без обрыва) то никаких проблем нету!


 
Андрей Ульченко   (2003-01-04 14:35) [3]

Собственно чтобы проверить полноценно докачивается файл или нет,
можно следующим :
1) команда fc /b <file_name_1> <file_name_2> (для бинарных файлов)
fc /L <file_name_1> <file_name_2> (для текстовых файлов)
2) запаковать архиватором и после докачки прогнать
архиватором на целосность
3) md5.exe

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

Удачи.


 
Reindeer Moss Eater   (2003-01-04 14:44) [4]

Все равно будет скачан ВЕСЬ файл


 
Reindeer Moss Eater   (2003-01-04 15:15) [5]

Сори, не разглядел. Не весь файл.


 
ION T   (2003-01-04 15:34) [6]

> s:= Socket.Receive Text;
доки бинарные....


 
Verg   (2003-01-04 15:55) [7]

Может попробовать
.....
fs.Seek(0,soFromEnd, +1);
....


 
Verg   (2003-01-04 15:56) [8]

Запятая лишняя, sorry :)

Может попробовать
.....
fs.Seek(0,soFromEnd +1);
....





Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2003.02.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
6-76052
BOBAKO
2003-01-04 17:59
2003.02.24
как определить ип адресс?


1-75979
D
2003-02-12 17:40
2003.02.24
Отследит изменения в ClipBoard


8-76036
Luc
2002-11-10 23:23
2003.02.24
Градиент на BMP


14-76102
Jakommo
2003-02-06 12:26
2003.02.24
Как запретить Сtr+Alt+Del и Alt+Tab в Вин2000


1-75938
Ihtiandr
2003-02-14 19:13
2003.02.24
combobox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский