8.х ОБМЕН Прошу помощи по FTPСоединению

Тема в разделе "Обмен данными в "1С:Предприятие 8"", создана пользователем platoha, 24 июн 2011.

  1. TopicStarter Overlay
    platoha
    Offline

    platoha

    Регистрация:
    23 июн 2011
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Друзья, помогите понять где искать корень проблемы. Код совсем простой. Соединяюсь с FTP и прошу перечислить файлы.

    Код:
    ПроксиСервер = Новый ИнтернетПрокси();
    ПроксиСервер.Установить("ftp","192.168.10.2",Число(3128));
    ПроксиСервер.Пользователь = "dnb";
    ПроксиСервер.Пароль = "32111";
    <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/попытка')">Попытка			</span>
    ИмяFTPСервера               = "85.21.118.201";			
    ПользовательFTPСоединения   = "ftpwrite";
    ПарольFTPСоединения         =  "ftpwrite";
    ПассивноеFTPСоединение      =  Ложь;			
    Соединение = Новый FTPСоединение (ИмяFTPСервера,,ПользовательFTPСоединения,ПарольFTPСоединения,ПроксиСервер,ПассивноеFTPСоединение);
    Исключение
    Сообщить("Ошибка записи файла на FTP!!!" + ОписаниеОшибки());
    Возврат; 
    КонецПопытки;
    ИсходныйКаталогFTP = СокрЛП(Соединение.ТекущийКаталог());
    Массив = Соединение.НайтиФайлы(ИсходныйКаталогFTP,"*.*");
    Для каждого файл из Массив Цикл
    Если Файл.ЭтоФайл() Тогда
    Сообщить(Файл.ПолноеИмя);
    КонецЕсли;
    КонецЦикла;
    
    В результате в окне сообщений вижу только: /dcc.int.npg.ru (squid/2.5.STABLE12-20051118)
    Причем через тот же тотал командер соединение происходит и файлы все видны. В чем может быть проблема?
  2. Cosh
    Offline

    Cosh

    Регистрация:
    21 июл 2008
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    1
    Пассив в истину попробуй. При активном режиме сервер пытается установить соединение с клиентом по динамическому порту, с которо тот ломанулся на 21 порт сервера для передачи комманд по нему. Делает он это со своего 20 порта, по умолчанию. А за проксёй он (дин. порт клиента), ясен пончик, не виден.

    ПыСы: вруби пассив и будет счастье.
  3. TopicStarter Overlay
    platoha
    Offline

    platoha

    Регистрация:
    23 июн 2011
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Не помогло к сожалению. Результат тот же.
  4. wolf3d
    Offline

    wolf3d Опытный в 1С

    Регистрация:
    5 мар 2011
    Сообщения:
    83
    Симпатии:
    0
    Баллы:
    26
    лови мой код
    Код:
    фтп = Новый FTPСоединение(константы.ИмяФТП.Получить(),константы.ПортФТП.Получить(),константы.ПользовательФТП.Получить(),константы.ПарольФТП.Получить(),,истина);
    ма=фтп.НайтиФайлы(,"*.rar");
    // ма - массив с именами
    
    
    все работает уже полгода)
    НО! были проблемы как у тебя
    суть свелась к следующему - как уже тебе писали выше - фтп работает в двух режимах - активном и пассивном используя порты 20 и 21
    практически все фтп манагеры умеют автоматом переключаться из активки в пасивку и наоборот, причем по умолчанию все начинают ломиться в АКТИВНОМ режиме
    ОДНАКО фтп 1С НЕ умеет менять режим, отсюда и имеем проблему:
    если ставим активный режим фтп - он ломится на сервер - сервер говорит - не чувак я активку не поддерживаю - 1с зависла :(
    если ставим пассивный режим фтп - он ломится на сервер - сервер говорит - чувак ты сперва в активке попробуй - 1с снова зависла :(

    вывод напрашивается сам собой - конфигурируйте сервер фтп на активный режим, и будет вам щастя)

Поделиться этой страницей