Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 20.08.2012, 01:52   #1
Pack
 
Регистрация: 09.02.2012
Сообщений: 8
Репутация: 10
По умолчанию URLDownloadToFileA

Здравствуйте. есть значит такой код
Код:
function UrlDownLoadToFile(Caller,URL,FileName: PAnsiChar; Reserved: LongWord; StatusCB: Pointer): LongWord;
stdcall; external 'urlmon.dll' name 'URLDownloadToFileA';

UrlDownLoadToFile(nil, 'http://host.com/file.exe', 'c:\1.exe', 0, nil);
все прекрасно работает, но мне нужно так

Код:
procedure DownloadFile;
var
  urlmon: THandle;
  UrlDownLoadToFile : function(Caller,URL,FileName: PAnsiChar; Reserved: LongWord; StatusCB: Pointer): LongWord;
begin
  urlmon := LoadLibrary('urlmon.dll');
  UrlDownLoadToFile := GetProcAddress(GetModuleHandle('urlmon.dll'), 'URLDownloadToFileA');
  UrlDownLoadToFile(nil, 'http://host.com/file.exe', 'c:\1.exe', 0, nil);
  FreeLibrary(urlmon);
end;
но данный код не работает, падает с ошибкой. подскажите что я делаю не так, заранее спасибо!
Pack вне форума   Ответить с цитированием
Старый 20.08.2012, 07:30   #2
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 14,874
Репутация: 2668
По умолчанию

Цитата:
UrlDownLoadToFile := GetProcAddress(GetModuleHandle('url mon.dll'), 'URLDownloadToFileA');
Зачем ГетМодулеХендл здесь? ЛоадЛайбрери просто так была?

Раз уже лезете в винапи, то читайте ж мсдн и примеры смотрите.
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x на форуме   Ответить с цитированием
Старый 20.08.2012, 14:59   #3
Человек_Борща
Профессионал
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Адрес: Республика Беларусь, г. Минск
Сообщений: 11,444
Репутация: 2785
По умолчанию

Все фигня. Где проверка на валидные дескрипторы? if hLib <> 0 then, if Func <> nil then
Человек_Борща вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


14:45.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.