![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Получить картинку (файл) с сервера...
Vulko © (2005-06-14 17:32:00)Пишу вот такой код:
var
Form1: TForm1;
stream: TStream;
img: TJPEGImage;
...
tidhttp.Get(' http://www.3dnews.ru/documents/news5/20050606_pentax.jpg', stream);
img.Create;
img.LoadFromStream(stream);
img.SaveToFile('c:\q.jpg');
На шаге img.Create выдаёт ошибку Access Violation.
Убираю конструктор - выдаёт ошибку на LoadFromStream.
Как вообще это делается (получение jpeg'а с сервера)?
GEEK (2005-06-16 16:36:00) [1]Пжалуйста
Vulko (2005-06-16 15:29:00) [2]GEEK, спс огромное.
Vulko (2005-06-16 14:55:00) [3]Digitman, что за секреты. Объясни нормально.
GEEK (2005-06-16 14:47:00) [4]Digitman! Не доставай человека!
2Vulko все нормуль, просто надо закрыть поток... Попробуй открыть пейнтом и увидешь в чем прикол. Добавь в конце строку stream.free; вощем
Digitman (2005-06-16 14:42:00) [5]
> файл то создаётся
> он пустой. Т.е. ничего не отображается
и опять - секрет, только теперь уже секретен размер файла
Vulko (2005-06-16 14:32:00) [6]GEEK, спасибо. Понял в чём загвоздка была...
Теперь проблема другая - файл то создаётся и всё работает без ошибок. Размер тот что надо. Только вот проблема - открываю жипег в acdsee, а он пустой. Т.е. ничего не отображается...
Digitman (2005-06-16 13:50:00) [7]
> Теперь выдаёт ошибку на последнее строке файла проекта
но теперь ошибка - секретная ... не то что Access Violation ...
GEEK (2005-06-16 01:26:00) [8]GEEK спешит на помощь!
Вот рабочий код сохраняет картинку на диск.
var stream: TFileStream;
begin
stream:=TFileStream.Create('imga.gif',fmCreate);
idhttp1.Get(' http://www.3dnews.ru/documents/news5/20050606_pentax.jpg', stream);
З.Ы. Почитай хелп по Stream
Vulko (2005-06-15 18:44:00) [9]Помогите. Очень надо. В поисковиках ничего толкового не нашёл... На запросы выдаётся только всякий мусор...
Vulko (2005-06-14 19:46:00) [10]Может что-то с request.content type? Или ещё с каким свойством tidhttp...
Vulko (2005-06-14 19:42:00) [11]Ошибка происходит именно при попытке LoadFromStream. Я закоментировал, и всё нормально работает.
Eraser (2005-06-14 18:01:00) [12]Vulko © (14.06.05 17:58) [2]
Тут отлаживать надо.
Vulko (2005-06-14 17:58:00) [13]Теперь выдаёт ошибку на последнее строке файла проекта:
program NewsGrabber;
uses
Forms,
main in 'main.pas' {Form1};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end. // вот тут
Digitman (2005-06-14 17:55:00) [14]
> На шаге img.Create выдаёт ошибку Access Violation
img := TJPEGImage.Create;
img.LoadFromStream(stream);
img.SaveToFile('c:\q.jpg');