Как Сохранить Картинку

Тема в разделе "Delphi - Сети", создана пользователем prosto4ok, 18 янв 2012.

  1. prosto4ok

    prosto4ok New Member

    Регистрация:
    17 янв 2012
    Сообщения:
    4
    Симпатии:
    0
    Имеется адрес картинки, как ее сохранить, на компьютер?
     
  2. sinkopa

    sinkopa Well-Known Member

    Регистрация:
    17 июн 2009
    Сообщения:
    344
    Симпатии:
    9
    По разному можно... :)
    Например так:
    Код (Delphi):
    uses Wininet, jpeg;

    //...

    implementation

    {$R *.dfm}


    function GetInetFile(const fileURL, FileName: string): boolean;
    const
    BufferSize = 1024;
    var
    hSession, hURL: HInternet;
    Buffer: array[1..BufferSize] of Byte;
    BufferLen: DWORD;
    f: file;
    sAppName: string;
    begin
    Result := False;
    sAppName := ExtractFileName(Application.ExeName);
    hSession := InternetOpen(PChar(sAppName),
    INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
    try
    hURL := InternetOpenURL(hSession, PChar(fileURL), nil, 0, 0, 0);
    try
    AssignFile(f, FileName);
    Rewrite(f,1);
    repeat
    InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen);
    BlockWrite(f, Buffer, BufferLen);
    until
    BufferLen = 0;
    CloseFile(f);
    Result := True;
    finally
    InternetCloseHandle(hURL);
    end;
    finally
    InternetCloseHandle(hSession);
    end;
    end;

    //...

    procedure TForm1.Button1Click(Sender: TObject);
    var
    FileOnNet, LocalFileName: string;
    begin
    FileOnNet := 'http://codeby.net/uploads/111.jpg';
    LocalFileName := 'C:\111.jpg';

    if (GetInetFile(FileOnNet, LocalFileName) = True) then
    Image1.Picture.LoadFromFile(LocalFileName)
    else
    ShowMessage('Не получилось... :-(');

    end;
     
Загрузка...

Поделиться этой страницей