Форум: "WinAPI";
Текущий архив: 2009.09.13;
Скачать: [xml.tar.bz2];
ВнизWininet: функция FtpCommand() Найти похожие ветки
← →
Smb © (2008-07-23 07:53) [0]Пробема следующая:
Хочу заюзать FtpCommand() из WinAPI. Столкнулся с трудностью получения результатов команды.
Начал ковырять. Обнаружил что объявление этой функции в дельфийском файле WinInet.pas отличается от приведенного в MSDN( у функции в MSDN есть дополнительный обязательный параметр ). Все найденные примеры используют вариант с этим параметром (__out HINTERNET *phFtpCommand). На одном сайте (http://www.cryer.co.uk/brian/delphi/wininet.htm#FtpCommand) вообще написано что в Delphi 5, 6, 7 (и предположительно в следующих) о_ш_и_б_к_а! Ну то
есть неправильно объявлена эта функция: пропущен этот параметр. Может кто сталкивался с такой проблемой? Подскажите что делать, пожалуйста.
← →
clickmaker © (2008-07-23 10:36) [1]ну переобъяви, в чем проблема
function MyFtpCommand(hConnect: HINTERNET; fExpectResponse: LongBool; dwFlags: DWORD; lpszCommand: PChar; dwContext: Pointer; phFtpCommand: PHINTERNET): LongBool; stdcall; external "wininet.dll" name "FtpCommandA";
← →
Anatoly Podgoretsky © (2008-07-23 11:31) [2]Откуда такие дикие предположения, прототип приведеный в MSDN соответствует объявлению в WinInet.pas
BOOL WINAPI FtpCommand(
HINTERNET hConnect,
BOOL fExpectResponse,
DWORD dwFlags,
LPCTSTR lpszCommand,
DWORD dwContext
);
← →
Smb © (2008-07-23 17:55) [3]
> ну переобъяви, в чем проблема
хм... интересно. попробую вечерком. до этого пробовал переобъявлять в WinInet.pas но ничего не вышло так как не компилилось, а с make немного попарился и плюнул...
> Откуда такие дикие предположения
отсюда:
http://msdn.microsoft.com/en-us/library/aa384133.aspx
а ваше предположение отсюда если не ошибаюсь (и касается оно по всей видимости только Windows CE:
http://msdn.microsoft.com/en-us/library/aa452208.aspx
← →
Smb © (2008-07-23 18:05) [4]Вопрос переместившему обсуждение сюда из ветки WinAPI (полагаю это уважаемый модератор):
Скажите, а исходя из чего вы переместили этот топик сюда? Слово "ftp" конечно относится к сетям, однако меня в рамках топика волнует именно вопрос странного объявления API-функции...
← →
Anatoly Podgoretsky © (2008-07-23 18:20) [5]> Smb (23.07.2008 17:55:03) [3]
Действительно, тут я виноват не обратил внимание на верхушку дерева, обрадовался, что сразу нашел нужное.
http://msdn.microsoft.com/en-us/library/aa452208.aspx
← →
имя (2008-07-23 18:21) [6]Удалено модератором
← →
app © (2008-07-23 18:22) [7]> Smb (23.07.2008 18:05:04) [4]
Перенесу, но данный факт надо было подчеркнуть особо, чтобы даже поползновений не было.
← →
smb © (2008-08-01 09:45) [8]В общем попарился я с этим и плюнул. FtpCommand() нормально работает с параметрами из WinInet.pas. Результат можно получить функцией InternetGetLastResponseInfo(). Однако уж больно все закручено у них. Посылает команды которые я не просил посылать. С памятью траблы и т.д.
Я не стал дальше мучаться и написал своего FTP-клиента на сокетах. Благо функционал мне требовался небольшой. Всего то download, upload, delete, list, resume. Там правда была запарка с неблокирующимим режимами сокета-сервера, но это уже выходит за рамки данного вопроса. Всем спасибо за помощь.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2009.09.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c