Alpha Cheaters
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Alpha Cheaters


 
InícioInício  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  

Compartilhe | 
 

 Como criar uma DLL hack de combat arms

Ver o tópico anterior Ver o tópico seguinte Ir para baixo 
AutorMensagem
SkullDad
Bronze Member
Bronze Member
SkullDad

Registrado em : 09/02/2011
Localização : Nos Quintos Dos Infernos
Mensagens : 129
Agradecido : 12
Idade : 26
Como criar uma DLL hack de combat arms Green_left0 / 1000 / 100Como criar uma DLL hack de combat arms Green_right


Como criar uma DLL hack de combat arms Empty
MensagemAssunto: Como criar uma DLL hack de combat arms   Como criar uma DLL hack de combat arms Empty10th fevereiro 2011, 17:43

Primero Criando uma DLL para Combat Arms



Esta é uma outra dúvida bastante freqüente que chega a nós. "Como posso usar uma DLL ?", "Como posso criar uma DLL ?", "Ei, moço! Pra quê serve uma DLL ?"



Pois bem, DLL ou Dynamic Link Libraries, permitem que um conjunto de funções desenvolvidas em uma linguagem possam ser utilizadas em programas desenvolvidos em outras linguagens.


Você pode, por exemplo, criar uma DLL em Delphi com um conjunto de funções e utilizá-la em aplicativos desenvolvidos em C++ ou Visual Basic, por exemplo. Agora, vamos começar criando uma DLL:


Selecione o item New do Menu File, para exibir a caixa de diálogo New Items. Agora, selecione o item DLL e clique em OK, para gerar o código principal da DLL, que se apresenta a seguir:


Código:


Citação:
library Project1;

{ Important note about DLL memory management: ShareMem must be the first unit in your library's USES clause AND your project's (select Project-View Source) USES clause if your DLL exports any procedures or functions that pass strings as parameters or function results. This applies to all strings passed to and from your DLL--even those that are nested in records and classes. ShareMem is the interface unit to the BORLNDMM.DLL shared memory manager, which must be deployed along with your DLL. To avoid using BORLNDMM.DLL, pass string information using PChar or ShortString parameters. }

uses
SysUtils, Classes;
begin
end.


Em muitas situações, inclusive esta, o arquivo DELPHIMM.DLL deve ser distribuído junto à sua aplicação. Uma outra observação muito importante, para que você possa escrever suas DLLs, você deve ter conhecimentos na Linguagem Object Pascal.


Vamos continuar criando nossa DLL, pois é ela que iremos usar mais para frente. Apenas como exemplificação, vamos criar uma função que receba como parâmetros dois números reais e retorne o maior deles.

Código:


Citação:
Function Max (a b : double ) : double ; Export ; stdcall ;
begin
If ( a > B ) then Result :=a else Result := b ;
end
Citação:
;


Export = indica que a função poderá ser chamada por outros aplicativos.

Stdcall = permite que aplicativos desenvolvidos em outras linguagens façam chamadas à função.


Após serem feitas estas alterações e salvar o projeto com o nome MAXDLL, nossa DLL ficará assim:

Citação:
library Project1;

{ Important note about DLL memory management: ShareMem must be the first unit in your library's USES clause AND your project's (select Project-View Source) USES clause if your DLL exports any procedures or functions that pass strings as parameters or function results. This applies to all strings passed to and from your DLL--even those that are nested in records and classes. ShareMem is the interface unit to the BORLNDMM.DLL shared memory manager, which must be deployed along with your DLL. To avoid using BORLNDMM.DLL, pass string information using PChar or ShortString parameters. }

uses
SysUtils,
Classes;
function Max(a, b : double):double:expert:stdcall:
begin
if ( a > B ) then result:= a else result := b;
end;

exports
Max index 1;
begin
end.



Você pode compilar uma DLL, assim como a um projeto no Delphi, e distribuir livremente.


PS: Você não pode executar uma DLL pelo Delphi, através do RUN do Menu Run, pois não se trata de uma aplicação.


Mais à frente, você perceberá que uma DLL pode usar formulários e objetos definidos em outras unidades. Iremos, agora, chamar uma DLL, a partir de outra aplicação.


Neste exemplo que iremos montar, iremos usar: um formulário, duas caixas de texto (os quais o usuário irá digitar dois números reais), um botão de comando.


Citação:
unit usadll;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
function Max(a, b : double):double;stdcall;

var
Form1: TForm1;

implementation

{$R *.DFM}

function Max(a, b : double):double;external 'MaxDLL';
procedure TForm1.Button1Click(Sender: TObject);
var
x, y, resultado : double;
begin
x := StrToFloat(Edit1.Text);
y := StrToFloat(Edit2.Text);
resultado := Max(x,y);
ShowMessage('Valor Máximo ' +FloatToStr(resultado));
end;



PS: A função Max está declarada na seção interface e implementada na seção implementation, ou seja, a função está implementada em uma DLL.


Bem, mostramos como criar uma DLL simples e como fazer chamada de uma DLL. Agora, iremos melhorar nossa DLL, fazendo com que ela exiba um formulário qualquer em qualquer aplicação desenvolvida para Windows.


Colocar os bitmaps na dll

Por vezes, quando iniciamos um projecto, temos uma preocupação: fazer uma aplicação pequena. Bem, a solução pode passar por colocar todos os bitmaps que vamos utilizar numa dll. Então vamos lá começar:


Deve usar o Image Editor, criar uma nova Resource File (.res), neste ficheiro vamos colocar os bitmaps e icons (ambos funcionam da mesma forma) que queremos na nossa aplicação, clique com a tecla direita do rato na nova resource file e crie um novo bitmap, depois desenhe ou cole do clipboard um bitmap, finalmente guarde o ficheiro com o nome images.res. Depois disto estar feito vá ao IDE do Delphi e no File menu clique New... e escolha DLL depois cole o código abaixo, não se esqueça de adicionar uma unit vazia ao projecto. Guarde o projecta da dll no mesmo directório do ficheiro image.res, finalmente faça o build da dll (não se esqueça, que não se pode correr [executar] uma dll!)

Código da Dll:

Código

library ImageRes; {nome da dll}
uses DummyUnit; {DummyUnit é uma unit vazia, que é necessária}
{$R images.res} {nome da resource file, que deve estar no mesmo caminho da dll}
begin
end.

Código da DummyUnit:

Código:
Citação:
unit DummyUnit;
interface
implementation
end


Usar os bitmaps que estão na dll

Estão aqui alguns exemplos como extrair os bitmaps da dll:


Citação:
procedure TForm1.SpeedButton1Click(Sender:TObject);
var
MyHandle :THandle;
Bmp : TBitmap;
begin
MyHandle := LoadLibrary('ImageRes.DLL'); {nome da dll construida acima}
Bmp := TBitmap.Create;
Bmp.Handle := LoadBitmap(MyHandle, 'BITMAP1'); {Bitmap1 é o nome do bitmap criado no ficheiro image.res}
SpeedButton1.Glyph.Handle := LoadBitmap(MyHandle,'BITMAP1'); {Carrega o Bitmap1 para o glyph do SpeedButton1}
Canvas.Draw(0,0,Bmp); {Desenha o bitmap no canvas da form}
Image1.picture.bitmap:=Bmp; {Carrega o bitmap para o componente Timage}
Bmp.Free;
end;



CRÉDITOS: Sr.stifler - Pela Base Do Tópico e Explicações
Eu - Pelo Tópico

lol! lol!
Ir para o topo Ir para baixo
posonha
Membro
Membro
posonha

Registrado em : 08/02/2011
Localização : santos
Mensagens : 3
Agradecido : 0
Como criar uma DLL hack de combat arms Green_left15 / 10015 / 100Como criar uma DLL hack de combat arms Green_right


Como criar uma DLL hack de combat arms Empty
MensagemAssunto: Re: Como criar uma DLL hack de combat arms   Como criar uma DLL hack de combat arms Empty9th março 2011, 17:54

PUNIDO POR: gutogmm
Como criar uma DLL hack de combat arms Punido2
Ir para o topo Ir para baixo
.:SuPreMoGraU:.
Moderador
Moderador
.:SuPreMoGraU:.

Registrado em : 01/02/2011
Localização : Em casa
Mensagens : 388
Agradecido : 92
Como criar uma DLL hack de combat arms Green_left0 / 1000 / 100Como criar uma DLL hack de combat arms Green_right


Como criar uma DLL hack de combat arms Empty
MensagemAssunto: Re: Como criar uma DLL hack de combat arms   Como criar uma DLL hack de combat arms Empty9th março 2011, 18:33

NAO AVISEI ANTES PORQUE
1 O CARA TAVA BANIDO ATE!
2 ESTE TOPICO TEM 30 DIAS

ESSE FOI CULPA SUA MAIS RELCHA RESSUCITAR TOPICOS APENAS É 15 PONTOS E VOCE PERDE ELES SE VC FICAR ATENTO AS REGRAS
Ir para o topo Ir para baixo
Power-full
Moderador
Moderador
Power-full

Registrado em : 07/02/2011
Localização : Junk Flea
Mensagens : 334
Agradecido : 33
Idade : 28
Como criar uma DLL hack de combat arms Green_left0 / 1000 / 100Como criar uma DLL hack de combat arms Green_right


Como criar uma DLL hack de combat arms Empty
MensagemAssunto: Re: Como criar uma DLL hack de combat arms   Como criar uma DLL hack de combat arms Empty10th março 2011, 01:56

ISOO MSM MAIS NAO TEM NADA A VER QUE O CARA TA BANIDO Very Happy
Ir para o topo Ir para baixo
.:SuPreMoGraU:.
Moderador
Moderador
.:SuPreMoGraU:.

Registrado em : 01/02/2011
Localização : Em casa
Mensagens : 388
Agradecido : 92
Como criar uma DLL hack de combat arms Green_left0 / 1000 / 100Como criar uma DLL hack de combat arms Green_right


Como criar uma DLL hack de combat arms Empty
MensagemAssunto: Re: Como criar uma DLL hack de combat arms   Como criar uma DLL hack de combat arms Empty10th março 2011, 09:24

A é so pra levanta moral '-' Very Happy
Ir para o topo Ir para baixo
Conteúdo patrocinado




Como criar uma DLL hack de combat arms Empty
MensagemAssunto: Re: Como criar uma DLL hack de combat arms   Como criar uma DLL hack de combat arms Empty

Ir para o topo Ir para baixo
 

Como criar uma DLL hack de combat arms

Ver o tópico anterior Ver o tópico seguinte Ir para o topo 

 Tópicos semelhantes

+
Página 1 de 1

Permissões neste sub-fórumNão podes responder a tópicos
Alpha Cheaters :: Combat Arms :: Combat Arms Tutoriais-
Ir para: