elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  [Delphi] ImageShack Uploader 0.3
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Delphi] ImageShack Uploader 0.3  (Leído 1,652 veces)
BigBear


Desconectado Desconectado

Mensajes: 545



Ver Perfil
[Delphi] ImageShack Uploader 0.3
« en: 2 Mayo 2014, 23:01 pm »

Version Final de este programa para subir imagenes a ImageShack usando el API que ofrecen.

Una imagen :



El codigo :

Código
  1. // ImageShack Uploader 0.3
  2. // Based in the API of ImageShack
  3. // Coded By Doddy H
  4.  
  5. unit image;
  6.  
  7. interface
  8.  
  9. uses
  10.  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
  11.  System.Classes, Vcl.Graphics,
  12.  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, IdBaseComponent, IdComponent,
  13.  IdTCPConnection, IdTCPClient, IdHTTP, Vcl.Imaging.pngimage, Vcl.ExtCtrls,
  14.  Vcl.ComCtrls, Vcl.StdCtrls, about, IdMultipartFormData, PerlRegEx;
  15.  
  16. type
  17.  TForm1 = class(TForm)
  18.    IdHTTP1: TIdHTTP;
  19.    Image1: TImage;
  20.    StatusBar1: TStatusBar;
  21.    GroupBox1: TGroupBox;
  22.    Edit1: TEdit;
  23.    Button1: TButton;
  24.    OpenDialog1: TOpenDialog;
  25.    GroupBox2: TGroupBox;
  26.    Edit2: TEdit;
  27.    GroupBox3: TGroupBox;
  28.    Button2: TButton;
  29.    Button3: TButton;
  30.    Button4: TButton;
  31.    Button5: TButton;
  32.    procedure Button4Click(Sender: TObject);
  33.    procedure Button1Click(Sender: TObject);
  34.    procedure Button3Click(Sender: TObject);
  35.    procedure Button5Click(Sender: TObject);
  36.    procedure Button2Click(Sender: TObject);
  37.    procedure FormCreate(Sender: TObject);
  38.  private
  39.    { Private declarations }
  40.  public
  41.    { Public declarations }
  42.  end;
  43.  
  44. var
  45.  Form1: TForm1;
  46.  
  47. implementation
  48.  
  49. {$R *.dfm}
  50.  
  51. procedure TForm1.Button1Click(Sender: TObject);
  52. begin
  53.  if OpenDialog1.Execute then
  54.  begin
  55.    Edit1.Text := OpenDialog1.FileName;
  56.  end;
  57. end;
  58.  
  59. procedure TForm1.Button2Click(Sender: TObject);
  60. var
  61.  regex: TPerlRegEx;
  62.  datos: TIdMultiPartFormDataStream;
  63.  code: string;
  64.  url: string;
  65.  
  66. begin
  67.  
  68.  if FileExists(Edit1.Text) then
  69.  begin
  70.  
  71.    regex := TPerlRegEx.Create();
  72.  
  73.    StatusBar1.Panels[0].Text := '[+] Uploading ...';
  74.    Form1.StatusBar1.Update;
  75.  
  76.    datos := TIdMultiPartFormDataStream.Create;
  77.    datos.AddFormField('key', '');
  78.    // Fuck You
  79.    datos.AddFile('fileupload', Edit1.Text, 'application/octet-stream');
  80.    datos.AddFormField('format', 'json');
  81.  
  82.    code := IdHTTP1.Post('http://post.imageshack.us/upload_api.php', datos);
  83.  
  84.    regex.regex := '"image_link":"(.*?)"';
  85.    regex.Subject := code;
  86.  
  87.    if regex.Match then
  88.    begin
  89.      url := regex.Groups[1];
  90.      url := StringReplace(url, '\', '', [rfReplaceAll, rfIgnoreCase]);
  91.      Edit2.Text := url;
  92.      StatusBar1.Panels[0].Text := '[+] Done';
  93.      Form1.StatusBar1.Update;
  94.  
  95.    end
  96.    else
  97.    begin
  98.      StatusBar1.Panels[0].Text := '[-] Error uploading';
  99.      Form1.StatusBar1.Update;
  100.    end;
  101.  
  102.    regex.Free;
  103.  
  104.  end
  105.  else
  106.  begin
  107.    StatusBar1.Panels[0].Text := '[+] File not Found';
  108.    Form1.StatusBar1.Update;
  109.  end;
  110.  
  111. end;
  112.  
  113. procedure TForm1.Button3Click(Sender: TObject);
  114. begin
  115.  Edit2.SelectAll;
  116.  Edit2.CopyToClipboard;
  117. end;
  118.  
  119. procedure TForm1.Button4Click(Sender: TObject);
  120. begin
  121.  Form2.Show;
  122. end;
  123.  
  124. procedure TForm1.Button5Click(Sender: TObject);
  125. begin
  126.  Form1.Close();
  127.  Form2.Close();
  128. end;
  129.  
  130. procedure TForm1.FormCreate(Sender: TObject);
  131. begin
  132.  OpenDialog1.InitialDir := GetCurrentDir;
  133. end;
  134.  
  135. end.
  136.  
  137. // The End ?
  138.  

Si lo quieren bajar lo pueden hacer de aca.


« Última modificación: 2 Mayo 2014, 23:04 pm por Doddy » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[APORTE] [RUBY] Shack (Imageshack Uploader)
Scripting
Eleкtro 0 1,840 Último mensaje 19 Marzo 2012, 15:18 pm
por Eleкtro
[APORTE] [BATCH] Shack (Imageshack Uploader)
Scripting
Eleкtro 5 4,203 Último mensaje 18 Octubre 2012, 04:34 am
por Eleкtro
[RUBY] [WINDOWS] IShack v1.4 (ImagesHack Uploader) ...(24/10/2012)
Scripting
Eleкtro 6 5,780 Último mensaje 27 Octubre 2012, 00:33 am
por Garcad
[Perl] Imageshack Uploader 0.1
Scripting
BigBear 0 1,724 Último mensaje 14 Mayo 2013, 20:11 pm
por BigBear
[Delphi] ImageShack Uploader 0.1
Programación General
BigBear 2 2,023 Último mensaje 12 Octubre 2013, 01:43 am
por BigBear
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines