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

Вниз

Помогите с пробоемой   Найти похожие ветки 

 
abcd   (2002-12-19 17:43) [0]

type
PBuffer = ^TBuffer;
TBuffer = array [Byte] of Char;
var buf: PBuffer;

begin
...
AssignFile(f,"123");
Rewrite(f);
BlockWrite(f,buf^,4);
...
end;
в файл помимо нужной информации пишется что-то левое, хотя я из буфера беру, допустим 4 символа.


 
Reindeer Moss Eater   (2002-12-19 17:47) [1]

Пишется то, на что указывает ни на что не указывающий buf


 
abcd   (2002-12-19 17:53) [2]

если подробней, то до этого кода:
src := TFileStream.Create("234",fmOpenRead);
while src.Position < src.Size do
cnt := src.Read(buf^, SizeOf(buf));


 
Sha   (2002-12-19 17:53) [3]

Нам видно все, что между точек...


 
Digitman   (2002-12-19 17:56) [4]

Нет, ну а инициализация переменной buf где ? она вообще существует у тебя в коде ДО всего того, что ты привел ?


 
abcd   (2002-12-19 17:59) [5]

Это посылка с сервера:
src := TFileStream.Create("234",fmOpenRead);
sServ.Socket.Connections[0].SendText(IntToStr(src.Size));
New(buf);
while src.Position < src.Size do
begin
cnt := src.Read(buf^, SizeOf(buf));
sServ.Socket.Connections[0].SendBuf(buf^, cnt);
end;
Dispose(buf);
buf := nil;
src.Free;

Это прием клиентом:
if not Receive then Count := StrToInt(Socket.ReceiveText);
cnt := Socket.ReceiveLength;
if not Receive then
begin
AssignFile(f,"123");
Rewrite(f);
Receive := true;
end;
GetMem(buf,cnt+1);
Socket.ReceiveBuf(buf^,cnt);
BlockWrite(f,buf^,cnt);
CountRead := CountRead + cnt;
if CountRead = Count then
begin
CountRead := 0;
Count := 0;
Receive := false;
FreeMem(buf);
CloseFile(f);
sClnt.Socket.SendText("Received");
end;
Помимо файла источника в файл назначения пишется что-то, что не должно туда писаться.


 
{bas}   (2002-12-19 18:28) [6]

а кто б. обнулять buf в цикле отпраки?????



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

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

Наверх





Память: 0.45 MB
Время: 0.009 c
6-99231
Slym
2002-11-01 06:30
2002.12.30
IP2MAC


1-99047
stub
2002-12-19 09:53
2002.12.30
как не дать окну проги передвигая его по раб столу не давать закр


1-99141
4D man
2002-12-18 14:02
2002.12.30
Факториал дробного числа


14-99250
Diogen
2002-12-11 17:22
2002.12.30
Где можно найти пример экспорта данных в эксель ?


7-99389
LexusU
2002-10-25 11:44
2002.12.30
Отключение/перезагрузка компа в 2000/NT





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский