Показать сообщение отдельно

Delphi загрузка файла из интернета
  #1  
Старый 30.01.2010, 20:18
=Zeus=
Участник форума
Регистрация: 10.08.2009
Сообщений: 238
С нами: 8817310

Репутация: 108
По умолчанию Delphi загрузка файла из интернета

Возник такой вопрос. Нужно загрузить файл из интернета на компьютер. Вся фишка в том, чтобы сделать это скрытно. Но если использовать функцию UrlToDownloadFile из модуля Urlmon то этого сделать явно не получиться. Гуглил, есть много тем, где предлагают юзать InternetOpenURL InternetReadFile. Но все бы ничего. Я создаю проект, и подключаю только Windows и Wininet. Вызываю функцию - мой доктор веб кричит, что я написал DLOADER.Trojan. Если закомментировать InternetReadFile все снова будет нормально.
В общем вопрос - есть ли другие функции для загрузки файла. Или как мне скрыть себя от антивируса?

Вот, привожу мою функцию:
Код:
function GetFile(const URL, FileName: string): boolean;
const BuffSize = 4096;
var hSession, hURL: HInternet;
    Buffer: array[1..BuffSize] of Byte;
    BuffLen: DWORD;
    NewFile: file;
    sAppName: string;
begin
  Result := False;
  sAppName := ExtractFileName(ParamStr(0));
  hSession := InternetOpen(PChar(sAppName), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
  try
  hURL := InternetOpenURL(hSession, PChar(URL), nil, 0, 0, 0);
    try
    AssignFile(NewFile, FileName);
    Rewrite(NewFile, 1);
    repeat
    InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BuffLen);
    BlockWrite(NewFile, Buffer, BuffLen);
    until
    BuffLen = 0;
    CloseFile(NewFile);
    Result := True;
    finally
    InternetCloseHandle(hURL);
    end;
  finally
  InternetCloseHandle(hSession);
  Result := true;
  end;
end;

Последний раз редактировалось =Zeus=; 30.01.2010 в 21:23..
 
Ответить с цитированием