Ajuda - Busca - Membros - Calendário
Versão Completa: (Resolvido) Abrir .exe através de um button!
Fórum Script Brasil > Programação & Desenvolvimento > Delphi, Kylix
Severos
E ai galera beleza?

Eu queria saber um jeito de abrir um .exe através de um button.
Exemplo:
No meu programa terá 2 .exe
1 - um.exe
2 - dois.exe
e uma dll
o programa que eu vou codar no delphi será o um.exe. nesse programa vai ter um button e quando esse button for clicado queria que abrisse o dois.exe. porem não vou poder colocar o diretório do dois.exe, pois não tera um diretório fixo, pois vai ser em .rar e pode ser extraido e qualquer lugar. teria que chamar um função que abrisse o dois.exe porque ele está junto com o programada codado, o um.exe.
Alguém pode me ajudar?

Abraços! happy.gif
ZueRa
Olá amigo, bom dia.
Acredito que para abrir um programa você possa fazer assim:

CODE
procedure TForm1.Button1Click(Sender: TObject);
  begin
    ShellExecute(Handle, 'open', 'caminho do prog.',nil,nil,SW_NORMAL);
  end;


Basta modificar ao seu uso.
Caso queira saber mais sobre o ShellExecute e seus parâmetros, vide ShellExecute (no Help [Delphi] - Windows SDK).

Grande abraço!
Severos
Mais mano, ai eu preciso colocar o caminho do prog, o diretório.
E essa programa que vou postar na net e vai ser .rar e podera ser extraido em qualquer diretório....
Eder Moraes
QUOTE(Severos @ 06/04/2009 - 12:51) *
Mais mano, ai eu preciso colocar o caminho do prog, o diretório.
E essa programa que vou postar na net e vai ser .rar e podera ser extraido em qualquer diretório....


O winrar tem seu SFX que converte seu arquivo compactado em executavel, podendo obrigá-lo a ser extraido em um certo diretório, mesmo sem a intervensão do usuário.

Use o ExtractFilePath(Application.ExeName) para executa-lo no dir da sua aplicação que envia o comando.

Pode usar também o winexec.

CODE
WinExec(pchar(ExtractFilePath(Application.ExeName)+'nomedoexe.exe'),SW_NORMAL);
{se
  for no Lazarus use}
  ExecuteProcess(pchar(ExtractFilePath(Application.ExeName)+'nomedoexe.exe','"parametros se necessarios"');
Junior Souza
Só uma perguntinha. Esse shell execute funciona se meu aplicativo estiver rodando num computador linux??
Jhonas
QUOTE
Só uma perguntinha. Esse shell execute funciona se meu aplicativo estiver rodando num computador linux??


http://www.linhadecodigo.com.br/Livro.aspx?id=243

Voce pode usar o Kylix Enterprise Edition ( Delphi para Linux ) para testar

http://info.abril.com.br/download/1586.shtml

abraço

Severos
Eder Moraes
Valeu cara, deu certo aqui, smile.gif
Abraços !
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2012 Invision Power Services, Inc.