Guest
10-03-2003, 20:47
Короче проблема в следующем - если локально читаю файл и в цикле по 10 байт посылаю, то все работает, но уж очень долго, если считывать большее количество байт (следовательно и посылать большее), то почему - то когда принимаю (клиентом), то приходит не все содержимое файла, аналогично с заменой задержки (sleep). В чем проблема, а может это из - за того, что я пробую это локально?
Помогите...
hFile:=CreateFile(name, GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
len:=GetFileSize(hFile, nil);
c:=len;
while c>0 do
begin
ReadFile(hFile,buf,10,Bytes,nil);
if(Bytes>0)then
begin
send(sock, buf, Bytes, 0);
ZeroMemory(@buf, sizeof(buf));
Sleep(40);
dec(c, Bytes);
end;
end;
CloseHandle(hFile);
Помогите...
hFile:=CreateFile(name, GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
len:=GetFileSize(hFile, nil);
c:=len;
while c>0 do
begin
ReadFile(hFile,buf,10,Bytes,nil);
if(Bytes>0)then
begin
send(sock, buf, Bytes, 0);
ZeroMemory(@buf, sizeof(buf));
Sleep(40);
dec(c, Bytes);
end;
end;
CloseHandle(hFile);