Ir para conteúdo
🥇 [Exclusivo] Seja um Membro VIP EXTREME! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Posts Recomendados

Bom dia a todos.

Como eu faria para que um executável feito no delphi crie uma dll com as funções anteriormente determinadas através de Edits e Labels?

Por exemplo, eu quero que ele crie uma DLL que faça a função X, sendo que X é determinado por um Edit. Como eu o faria ?

PS: não é necessário que poste o código todo, apenas o nome da função já está bom :D

Link para o comentário
https://www.webcheats.com.br/topic/645650-exe-criando-dll/
Compartilhar em outros sites

Creio eu que nao tem nenhuma função pronta para isso, você terá que fazer.

 

Eu tenho um tutorial aqui que gera um .exe, basta você adaptar para uma gerar uma DLL.

 

Código que irá gerar:

 

Você terá que fazer 2 Projetos

 

 

Projeto 1 = Gerador

 

Coloque 2 Label, 2 Edit e 1 Button

 

 

Mude as propriedades:

 

Label1:

Caption = Caminho

 

Label2:

Caption = Mensagem

 

Edit1:

Name = EditCaminho

 

Edit2:

Name = EditMensagem

 

Button:

Caption = Gerar .exe

 

 

Adicione na Uses: StdCtrls, StrUtils

 

 

No evento OnCreate do Form coloque:

Quote

EditCaminho.Text := GetCurrentDir + '\ProCode.exe';

 

 

 

No evento onclick do Button coloque:

Quote

var

Victorxp: Char;

H: file of Char;

F: file of Char;

Origem, Destino: string;

Inicio, Mensagem: string;

I: Integer;

begin

Origem := GetCurrentDir + '\' + 'Arquivo.exe';

Destino := EditCaminho.Text;

Inicio := 'msg:';

Mensagem := EditMensagem.Text;

AssignFile(H, Origem);

AssignFile(F, Destino);

Reset(H);

ReWrite(F);

while not Eof(H) do

begin

Read(H, Victorxp);

Write(F, Victorxp);

end;

for I := 1 to Length(Inicio) do

begin

Victorxp := Inicio;

Write(F, Victorxp);

end;

for I := 1 to Length(Mensagem) do

begin

Victorxp := Mensagem;

Write(F, Victorxp);

end;

Closefile(H);

Closefile(F);

ShowMessage('Arquivo .exe gerado!');

 

 

-> Mude a parte em negrito para o nome do .exe do Projeto 2

 

 

Salve o Projeto 1 em uma pasta e compile-o!

 

 

Para usar:

 

Projeto 2 = Arquivo para o teste

 

Coloque 1 Label

 

 

No evento OnCreate do Form, coloque:

Quote

var

Victorxp: Char;

H: file of Char;

Origem: array[0..255] of Char;

Inicio, Mensagem: string;

Temp: string;

Posicao, Tamanho: Integer;

begin

GetModuleFileName(HInstance, Origem, SizeOf(Origem));

Inicio := 'msg:';

FileMode := 0;

Assignfile(H, Origem);

Reset(H);

while not Eof(H) do

begin

Read(H, Victorxp);

Temp := Temp + Victorxp;

end;

Posicao := Pos(Inicio, Temp);

Posicao := PosEx(Inicio, Temp, Posicao + 1) + Length(Inicio);

Tamanho := Length(Temp) - Posicao+1;

Mensagem := MidBStr(Temp, Posicao, Tamanho);

Closefile(H);

Label1.Caption := Mensagem;

 

 

Salve o Projeto 2 na mesma pasta do Projeto 1 compile-o!

 

 

 

Pronto, agora renomeie o .exe do Projeto 1 para Gerador e o .exe do Projeto 2 para Arquivo

 

 

Abra o Gerador.exe digite uma mensagem e clique em Gerar

Um .exe parecido com o Projeto 2 será criado na pasta do Projeto 1

Mas o Label1 do Projeto 2 será com o nome da mensagem que você colocou ao gerar

 

 

 

Créditos: Hacker_xXx, Graymalkin

Link para o comentário
https://www.webcheats.com.br/topic/645650-exe-criando-dll/#findComment-3208622
Compartilhar em outros sites

Bem, muito obrigado Luxfer. Pelo visto, você e o Vator tão salvando essa área ahsusauh

Aqui deu certinho pra criar tanto exe quanto a dll, e acho que se eu expandir mais o código, consigo realmente fazer uma dll com procedures e etc :D bem, muito obrigado.

Dúvida: se no projeto arquivo já tiver todas as procedures e funções que eu desejo, no arquivo gerado também vai ter ? acho que sim pois ambos tem o mesmo peso, mas não custa perguntar :D oobrigado.

Link para o comentário
https://www.webcheats.com.br/topic/645650-exe-criando-dll/#findComment-3209324
Compartilhar em outros sites

Sim.

Esqueci de avisar para incluir StrUtils nas Uses.

Copiei esse tutorial de um antigo fórum e esqueci desse pequeno detalhe ^^.

 

-

 

Para fazer uma DLL, basta substituir o Projeto 2 com uma DLL, por exemplo:

 

Ao criar o Projeto 2, crie uma DLL, coloque os códigos nela, e coloque o nome de Arquivo.dll

No projeto 1 troque o Origem := GetCurrentDir + '\' + 'Arquivo.exe'; para Origem := GetCurrentDir + '\' + 'Arquivo.dll';

 

Para gerar o .exe/.dll ele usa como base outro .exe/.dll, é quase como um Ctrl + C Ctrl + V.

A diferença é que você poder alterar dados de uma função e etc.

Link para o comentário
https://www.webcheats.com.br/topic/645650-exe-criando-dll/#findComment-3209612
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.