Как из VB вызвать FTP?
какая API-функция позволяет выполнить функции
программы FTP?
Т.е. по аналогии с командой PING, функции которой
реализуются через WINSOCK32 (об этом была речь
на форуме и приводился пример программы на бейсике).
Так вот - может кто знает аналогичный пример
использования функций и возможностей FTP из бейсика?
Вызывать модуль FTP.EXE с параметром
-s:(имя файла сценария) не подходит, т.к.
это вызывается DOS- эмуляция, нужно ждать
завершения приложения и вообще это не по современному. И записывать сценарий в файл не
хотелось бы.
Может кто знает хотя бы документацию по этому вопросу?
Вопрос такой:
какая API-функция позволяет выполнить функции
программы FTP?
Т.е. по аналогии с командой PING, функции которой
реализуются через WINSOCK32 (об этом была речь
на форуме и приводился пример программы на бейсике).
Так вот - может кто знает аналогичный пример
использования функций и возможностей FTP из бейсика?
Вызывать модуль FTP.EXE с параметром
-s:(имя файла сценария) не подходит, т.к.
это вызывается DOS- эмуляция, нужно ждать
завершения приложения и вообще это не по современному. И записывать сценарий в файл не
хотелось бы.
Может кто знает хотя бы документацию по этому вопросу?
почитай RFC по FTP. в принципе все можешь сделать сам - создаешь сокет на нужный порт, и используешь команды FTP: сначала для идентификации, потом для листинга директории, а потом GET нужного файла. Оформи все это в отдельный модуль и будет у тебя своя библиотека для работы с фтп.
если ФТП обычный - то все команды передаются открытым текстом, если SFTP - то надо надстройку SSH использовать.
вобщем совет: найди доку по командам ФТП (я бы RFC соответствующий нашел). соединись через телнет на сервер ФТП, вручную один раз посмотри как проходит сессия фтп и потом напиши прогу, которая все будет делать автоматически.
почитай RFC по FTP. в принципе все можешь сделать сам - создаешь сокет на нужный порт, и используешь команды FTP: сначала для идентификации, потом для листинга директории, а потом GET нужного файла. Оформи все это в отдельный модуль и будет у тебя своя библиотека для работы с фтп.
если ФТП обычный - то все команды передаются открытым текстом, если SFTP - то надо надстройку SSH использовать.
вобщем совет: найди доку по командам ФТП (я бы RFC соответствующий нашел). соединись через телнет на сервер ФТП, вручную один раз посмотри как проходит сессия фтп и потом напиши прогу, которая все будет делать автоматически.
xelos все правильно говорит, могу токо добавить что все относится к варианту решения посылки команд FTP через контрол Winsock.
Т.е. FTP как и многие известные широкой публике протоколы HTTP, POP3, SMTP, протоклы ICQ и т.д. являются протоколами высокого уровня. Для этого значит, то что они просто используют протоколы TCP/IP, посылая по ним свои команды и данные. Winsock занимается программной отправкой данных по TCP/IP, тебе об этом думать не придется, зато все остальное, (сам FTP протокол) на твоей совести.
Тут соответсвенно либо ты сам пишешь такую библиотеку, либо можно взять уже написанную, их тоже достаточно много валяется в инете на сайтах VB.
Тут соответсвенно либо ты сам пишешь такую библиотеку, либо можно взять уже написанную, их тоже достаточно много валяется в инете на сайтах VB.
Хотелось бы посмотреть на такие примеры с
комментариями,
что-то они мне не попались, может не там искал, кто знает -
где такие примеры компонент или классов - дайте ссылку.
Хотелось бы посмотреть на такие примеры с
комментариями,
что-то они мне не попались, может не там искал, кто знает -
где такие примеры компонент или классов - дайте ссылку.
Ну например вот готовый ocx - http://www.vbstreets.ru/ActiveX/Network/65908.aspx
почитай RFC по FTP. в принципе все можешь сделать сам - создаешь сокет на нужный порт, и используешь команды FTP: сначала для идентификации, потом для листинга директории, а потом GET нужного файла. Оформи все это в отдельный модуль и будет у тебя своя библиотека для работы с фтп.
если ФТП обычный - то все команды передаются открытым текстом, если SFTP - то надо надстройку SSH использовать.
вобщем совет: найди доку по командам ФТП (я бы RFC соответствующий нашел). соединись через телнет на сервер ФТП, вручную один раз посмотри как проходит сессия фтп и потом напиши прогу, которая все будет делать автоматически.
wininet для кого писали? Там есть функции для юзанья FTP. Типа создаешь связь, потом конектишься непосредственно, а потом юзаешь FtpFindFirst, другие функции, которые надо...
Смотреть в MSDN!
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/wininet_reference.asp
Для HTTP я знаю, кроме того, есть COM-объект, а их, как изветно в основном и юзают, а вот для FTP, наверняка тоже есть, того надо узнать, как его зовут, этот объект. А HTTP, я приведу пример на JavaScript, из описания TRACE XSS от белой шляпы:
var xmlHttp = new ActiveXObject(Microsoft.XMLHTTP);
xmlHttp.open("TRACE","http://foo.bar",false);
xmlHttp.send();
xmlDoc=xmlHttp.Response;
alert(xmlDoc);