Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2013, 14:53   #1
stalker1995s
Gamedeveloper
Форумчанин
 
Аватар для stalker1995s
 
Регистрация: 11.07.2012
Сообщений: 149
По умолчанию Заливка картинки, проблема с форматом

Здравствуйте, такая вот проблема, программа загружает картинку на Имеджхостинг Радикал, с загрузкой .png файлов нет проблем, но с другими форматами, сильно глючит, либо просто зависает. Код снизу.

Заметил, что если открывать программу, и заливать первую картинку, все выходит, но если снова попытаться, просто виснет. Подскажите что не так

Цитата:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdHTTP, IdMultipartFormData, XPMan;

type
TMainForm = class(TForm)
ed_file: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
OpenDlg: TOpenDialog;
IdHTTP: TIdHTTP;
Label1: TLabel;
XPManifest1: TXPManifest;
ed_link: TMemo;
Label3: TLabel;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure ed_linkClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
MainForm: TMainForm;

implementation

{$R *.dfm}

procedure TMainForm.SpeedButton1Click(Sender: TObject);
begin
if OpenDlg.Execute then
begin
ed_file.Text := OpenDlg.FileName;
end;
end;

procedure TMainForm.SpeedButton2Click(Sender: TObject);
var
Response: String;
FormData: TIdMultiPartFormDataStream;
S, E: integer;
link: string;
begin
if (FileExists(ed_file.Text) = False) then
begin
MessageBox(0, 'Файл(ы) не выбран(ы), выберете файл..!!! ', 'Ошибка', MB_ICONHAND);
Exit;
end else
begin
FormData := TIdMultiPartFormDataStream.Create;
try
FormData.AddFormField('upload', 'yes');
FormData.AddFormField('upload', 'yes');
FormData.AddFile('F', ed_file.Text, 'image/jpeg');
FormData.AddFormField('URLF', '');
FormData.AddFormField('O', 'yes');
FormData.AddFormField('M', '640');
FormData.AddFormField('JQ', '85');
FormData.AddFormField('J', 'yes');
FormData.AddFormField('IM', '7');
FormData.AddFormField('VM', '180');
FormData.AddFormField('R', '0');
FormData.AddFormField('VE', 'yes');
FormData.AddFormField('V', 'zoom');
FormData.AddFormField('X', '');
FormData.AddFormField('FS', '');
IdHTTP.HandleRedirects := True;
Response := idHTTP.Post('http://www.radikal.ru/action.aspx', FormData);
//
S := pos('[url=http://www.radikal.ru][img]', Response) + Length('[img]');;
E := pos('[/img]
', Response);
link := Copy (Response, S, E - S);
ed_link.Text := link;
finally
FormData.Free;
end;
end;
end;

procedure TMainForm.ed_linkClick(Sender: TObject);
begin
ed_link.SelectAll;
end;

procedure TMainForm.FormActivate(Sender: TObject);
begin
MainForm.Caption := 'Заливка картинок на Имиджхостинг www.radikal.ru';
Application.Title := 'Заливка картинок на Имиджхостинг www.radikal.ru';
end;

end.
stalker1995s вне форума Ответить с цитированием
Старый 21.03.2013, 19:48   #2
stalker1995s
Gamedeveloper
Форумчанин
 
Аватар для stalker1995s
 
Регистрация: 11.07.2012
Сообщений: 149
По умолчанию

Проблема найдена, и решена, во всяком случае на данный момент.
1. В строке FormData.AddFormField('JQ', '85'); // 85 это параметр, который если оставлять именно таким, а не вида img.Picture.BitMap.Widht или что то похожее, выдает ошибку. Так что ищите другие пути, что предстоит сделать мне.
2. Вылетала ошибка, связанная с тем, что стандартный image не может открыть файлы расширения '.gif'. Всем спасибо, в частности мне самому, тема закрыта
stalker1995s вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заливка черным цветом вместо картинки Crystallon Общие вопросы Delphi 1 20.05.2012 10:49
Проблема с форматом ячеек clasterit Microsoft Office Excel 1 02.03.2012 09:18
заливка картинки на фотообменник designer999 Компоненты Delphi 2 14.01.2011 18:17
Проблема с форматом времени (подсчет количества часов) Zalim Microsoft Office Excel 1 15.12.2010 09:21
Проблема с форматом ячейки gusluk Microsoft Office Excel 6 11.11.2009 09:50