Criar um aplicativo que será executado somente por outro aplicativo

 

Nesta dica veremos como fazer para que um aplicativo só possa ser executado por outro aplicativo. Para realizar isso colocamos uma senha como parâmetro, no fonte do segundo executável, para que ele não possa ser executado normalmente.

Para fazer isso, siga os passos mostrados a seguir:

Criação do Primeiro Executável

Crie um novo projeto. Adicione um Button e coloque o evento OnClick como descrito abaixo:

 

procedure TForm1.Button1Click(Sender: TObject);

var

  Erro: Word;

begin

  Erro := WinExec('c:\Prog2.exe senha', SW_SHOW);

  if Erro <= 31 then { Se ocorreu erro... }

    ShowMessage('Erro ao executar o programa.');

end;

 

Agora salve o projeto como Prog1.dpr e unit1.

Criação do Segundo Executável

Crie um novo projeto. Na unit do projeto (Project1.pas), antes da linha "Application.Initialize", insira o seguinte código:

 

Adicione na USES: Windows, Dialogs

 

if ParamStr(1) <> 'senha' then

begin

  ShowMessage('Execute este programa através de Prog2.EXE');

  Halt; { Finaliza }

end;

Conclusão

Da mesma forma que colocamos como parâmetro a palavra SENHA para o prog1 iniciar o segundo aplicativo, isso pode ser feito diretamente através do comando EXECUTAR no botão Iniciar do Windows. Para ilustrar como o prog2 pode ser executao sem a necessidade do prog1, clique em Iniciar, depois em Executar e preencha o campo abrir com o caminho onde se encontra o arquivo, colocando a senha logo após o nome do arquivo. Ex.: "c:\prog2.exe" senha. Com isso vemos que é possível executar o segundo aplicativo, bastando possuir a senha.