Вниз
Скачать: CL | DM;

wininet - InternetFindNextFile - ERROR_IO_PENDING   Найти похожие ветки 

 
marat2   (2004-03-16 14:36) [0]

Код следующий
hInternetOpen:= InternetOpen( "DownLoad Updates",
INTERNET_OPEN_TYPE_PRECONFIG,
nil,
nil,
INTERNET_FLAG_ASYNC);
if Assigned(hInternetOpen) then
begin
hInternetConnect:= nil;
hInternetConnect:= InternetConnect( hInternetOpen,
"192.168.116.129",
INTERNET_DEFAULT_FTP_PORT,
"username",
"password",
INTERNET_SERVICE_FTP,
0,
0);
if Assigned(hInternetConnect) then
begin
hFindFile:= nil;
hFindFile:= FtpFindFirstFile( hInternetConnect,
"*.*",
Win32FindDataA,
INTERNET_FLAG_NEED_FILE,
0); // эта команда выполняется нормально
if Assigned(hFindFile) then
begin
repeat
ListBox1.AddItem(string(Win32FindDataA.cFileName), nil);

until not(InternetFindNextFile( hFindFile, @Win32FindDataA)); // здесь стабильно ошибка ERROR_IO_PENDING при первом же цикле выполнения
InternetCloseHandle(hFindFile);
end;
InternetCloseHandle(hInternetConnect);
end;
InternetCloseHandle(hInternetOpen);

Может кто знает в чем проблема - все хендлы порождаются и уничтожаются нормально все работает нормально во только из-за этой ошибки отображается только один файл с сервера - тот который с получен с помощью FtpFindFirstFile


 
Digitman ©   (2004-03-16 15:07) [1]

ты же сам и указал флаг INTERNET_FLAG_ASYNC !
тем самым предполагаешь асинхронную работу ..

что ж ты хочешь ? ERROR_IO_PENDING как раз и сообщает тебе о том, что запущена фоновая операция по поиску очер.файла ...

читай внимательно
http://msdn.microsoft.com/library/en-us/wininet/wininet/calling_wininet_functions_asynchronously.asp


 
maratik2   (2004-03-16 15:53) [2]

2 Digitman

огромное спасибо - точно в цель - bingo



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
1-1080199485
Larry
2004-03-25 10:24
2004.04.11
StatusBar


7-1079816431
DEMON_XXX
2004-03-21 00:00
2004.04.11
Как отследить дискету в A:


14-1079798543
Тимур
2004-03-20 19:02
2004.04.11
Half life боты


14-1079331760
ИМХО
2004-03-15 09:22
2004.04.11
Насколько опасен MS Outlook Express


3-1078867317
ghrup
2004-03-10 00:21
2004.04.11
поле NUMERIC и BDE




   Наверх