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.