Форум программистов, компьютерный форум, киберфорум
Delphi: Сети
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/23: Рейтинг темы: голосов - 23, средняя оценка - 4.70
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
1

FTP через HTTP proxy

27.08.2012, 11:33. Показов 4791. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, уважаемые форумчане. Пишу FTP клиент подключающийся к FTP серверу через HTTP Proxy (UserGate5). Проблемма в следующем:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var fSession, hConnect: Pointer;
..
fSession := InternetOpen('',INTERNET_OPEN_TYPE_PROXY, 
PChar( 'http=http://169.254.126.20:8080 https=http://169.254.126.20:8080 
ftp=http://169.254.126.20:8080'), nil, 0);
if Assigned(fSession) then 
  begin
  hConnect := InternetConnect(fSession,PChar('91.149.157.143'),21,PChar('ncpi'),
PChar  ('etalon'),INTERNET_SERVICE_FTP,0,0);
  if not Assigned(hConnect) then begin
    ShowMessage('InternetConnect error');
  end;
end else
ShowMessage('InternetOpen error');
InternetOpen проходит нормально, а вот на InternetConnect подключение к серверу не происходит. Без прокси все работает. Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.08.2012, 11:33
Ответы с готовыми решениями:

HTTP - proxy на Delphi
Люди, кто-нибудь подобным занимался? Плиз, дайте исходники.

прекрутка к http post запросу Proxy
Здравствуйте,прошу огромной помощи. Есть HTTP POST - запрос на картинку. Картинка находится на...

Узнать количество файлов в папке по протоколу http или ftp
Ребята есть сервак на ftp папка как мне узнать сколько в этой папке файлов? Желательно без...

Запросы через Proxy.
Вообщем столкнулся я с таким: Нужно, чтобы программа выполняла запросы через Proxy сервер....

13
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 12:11 2
http://msdn.microsoft.com/en-u... 85%29.aspx

Читать внимательно про параметр lpszProxyName [in] !
0
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
27.08.2012, 12:16  [ТС] 3
Я так понял все дело тут "FTP requests can be made through a CERN type proxy either by changing them to an HTTP request or by using InternetOpenUrl." Действительно с OpenUrl все работает отлично. Если можно подскажите, пожалуйста, как поменять FTP request на HTTP?
0
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 12:31 4
Ну написано же там черным по белому:

FTP requests can be made through a CERN type proxy either by changing them to an HTTP request or by using InternetOpenUrl
0
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
27.08.2012, 12:54  [ТС] 5
Спасибо, mss. Сделал так:
Delphi
1
2
hConnect := InternetConnect(fSession,PChar('91.149.157.143'),21,PChar('ncpi'),
PChar  ('etalon'),INTERNET_SERVICE_HTTP,0,0);
Теперь нужно установить директорию и скачать файл:
Delphi
1
FtpSetCurrentDirectory(hConnect, PChar(ftpDir));
Не получается. Или как можно еще скачать файл с FTP?
0
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 13:20 6
что значит "Не получается" ?
что говорит Win32Check(FtpSetCurrentDirectory(...)) ?
ftpDir - это ANSI- или Unicode-строка ?
0
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
27.08.2012, 13:56  [ТС] 7
SystemError. Code 12018. В описании ошибок WinInet говорится: ERROR_INTERNET_INCORRECT_HANDLE_TYPE Неверный тип обработчика для данного действия.
0
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 14:35 8
Для CERN-прокси поднабор Ftp-функций в составе WinInet использован быть не может.
0
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
27.08.2012, 14:40  [ТС] 9
Как-же тогда можно получить список файлов и скачать нужный? Подскажите пожалуйста.
0
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 14:47 10
Через SOCKS-прокси
0
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
27.08.2012, 15:40  [ТС] 11
Нет ли пример кода?
0
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 16:01 12
А ты уже убедился что UserGate предоставляет функциональность SOCKS-прокси ?
0
5 / 5 / 2
Регистрация: 12.11.2011
Сообщений: 70
27.08.2012, 19:29  [ТС] 13
Должен поддерживать.
0
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
27.08.2012, 20:40 14
fSession := InternetOpen('',INTERNET_OPEN_TYPE_PROXY,
'socks=socks://xx.xx.xx.xx:xx .......
0
27.08.2012, 20:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.08.2012, 20:40
Помогаю со студенческими работами здесь

Загрузка страниц через корпоративный прокси (Proxy)
Добрый день! Мучаюсь уже несколько дней, и никак не могу выйти в просторы интернета в свой...

Прорыв через ISA proxy ошибку HTTP/1.1 407 Proxy Authentication Required
мой клиент на си++ по http протоколу общается с моим же сервром. Если на пути тупое прокси, то всё...

Заливка файлов по FTP через proxy
Собственно сабж. Облазил не только гугл, но и яндекс, не нашел нормального ответа. Вопросы...

Передача данных от клиента серверу через http proxy
Всем, доброго дня. Возникла следующая проблема: как реализовать взаимодействие клиента с сервером...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru