Работа с Wininet.dll

Тема в разделе "WASM.WIN32", создана пользователем maestro-ant, 27 авг 2006.

  1. maestro-ant

    maestro-ant Member

    Публикаций:
    0
    Регистрация:
    23 июл 2006
    Сообщения:
    112
    Нужно присоедениться к FTP-серверу и вывести файлы и каталоги с атрибутами, типа так:
    dir1 dr--r--r
    dir2 dr--r--r
    dir3 drw--rw--rw
    file1 rw--rw--rw

    решил с начала написать на делфи а потом перевести в Асм

    Код (Text):
    1. uses Wininet;
    2.  
    3. var
    4.  FtpHandle,InetHandle, hFind: HInternet;
    5.  s:WIN32_FIND_DATA;
    6.  
    7. procedure TForm1.Button2Click(Sender: TObject);
    8. begin
    9.    InetHandle := InternetOpen(PChar('FTP'), 0, nil, nil, 0);
    10.     FtpHandle := InternetConnect(InetHandle, PChar('10.10.11.8'), 21, PChar('Anonymous'),
    11.         PChar('qwerty.ru'), INTERNET_SERVICE_FTP, 0, 255);
    12.    if not Assigned(FtpHandle) then
    13.       InternetCloseHandle(InetHandle)
    14.    else
    15.  
    16.         try
    17.         hFind:= FtpFindFirstFile(FtpHandle, PChar('*.*'), s, FTP_TRANSFER_TYPE_ASCII, 255);
    18.         except
    19.         exit;
    20.      end;
    21.      ListBox1.Items.Add(s.cFileName + ' | ' + intToStr(s.dwFileAttributes));
    22.      while InternetFindNextFile(hFind, @s) do
    23.      begin
    24.        ListBox1.Items.Add(s.cFileName + ' | ' + intToStr(s.dwFileAttributes))
    25.      end;
    26.   InternetCloseHandle(InetHandle);
    27. end;
    файлы и каталоги выводит но с атрибутами чё то не то:
    dir1 16
    dir2 16
    dir3 16
    file1 128
    цифры 16,16,16,128 - это вродебы и есть атрибуты, но атрибуты dir3 должны отличатся от dir1 и dir2.

    Ребята помогите разобратся вчё же дело!!!
    P.S. Может надо было не в этом разделе?...извените
     
  2. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    maestro-ant
    FtpFindFirstFile/InternetFindNextFile заполняют структуру WIN32_FIND_DATA, т.е. пытаются перенести nix'овые атрибуты на платформу win.
     
  3. maestro-ant

    maestro-ant Member

    Публикаций:
    0
    Регистрация:
    23 июл 2006
    Сообщения:
    112
    да это понятно... как получить атрибуты директории (разрешена ли запись в этоу директорию?) пользуясь FtpFindFirstFile/InternetFindNextFile ???