[Delphi] DH Icon Changer 0.5

Iniciado por BigBear, Abril 11, 2014, 01:36:13 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Version final de este programa para cambiarle el icono a cualquier programa (eso creo).

Una imagen :



El codigo.

Código: delphi

// DH Icon Changer 0.5
// (C) Doddy Hackman 2014
// Based on IconChanger By Chokstyle
// Thanks to Chokstyle

unit icon;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
  System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, madRes, Vcl.StdCtrls,
  Vcl.Imaging.pngimage, Vcl.ExtCtrls, Vcl.ComCtrls, about;

type
  TForm1 = class(TForm)
    Image1: TImage;
    GroupBox1: TGroupBox;
    Edit1: TEdit;
    Button1: TButton;
    OpenDialog1: TOpenDialog;
    StatusBar1: TStatusBar;
    GroupBox2: TGroupBox;
    GroupBox3: TGroupBox;
    Button2: TButton;
    GroupBox4: TGroupBox;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Edit2: TEdit;
    Image2: TImage;
    OpenDialog2: TOpenDialog;
    procedure Button1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
    Edit1.Text := OpenDialog1.FileName;
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin

  if OpenDialog2.Execute then
  begin
    Image2.Picture.LoadFromFile(OpenDialog2.FileName);
    Edit2.Text := OpenDialog2.FileName;
  end;

end;

procedure TForm1.Button3Click(Sender: TObject);
var
  op: string;
  change: dword;
  valor: string;

begin

  valor := IntToStr(128);

  op := InputBox('Backup', 'Backup ?', 'Yes');

  if op = 'Yes' then
  begin
    CopyFile(PChar(Edit1.Text), PChar(ExtractFilePath(Application.ExeName) +
      'backup' + ExtractFileExt(Edit1.Text)), True);
  end;

  try
    begin
      change := BeginUpdateResourceW(PWideChar(wideString(Edit1.Text)), false);
      LoadIconGroupResourceW(change, PWideChar(wideString(valor)), 0,
        PWideChar(wideString(Edit2.Text)));
      EndUpdateResourceW(change, false);
      StatusBar1.Panels[0].Text := '[+] Changed !';
      Form1.StatusBar1.Update;
    end;
  except
    begin
      StatusBar1.Panels[0].Text := '[-] Error';
      Form1.StatusBar1.Update;

    end;
  end;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  Form2.Show;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  Form1.Close();
  Form2.Close();
end;

procedure TForm1.FormCreate(Sender: TObject);
begin

  OpenDialog1.InitialDir := GetCurrentDir;
  OpenDialog2.InitialDir := GetCurrentDir;
  OpenDialog2.Filter := 'Icons|*.ico|';

end;

end.

// The End ?


Si quieren bajar el programa lo pueden hacer de You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login.