Fórum Fechar outros programas #368282

09/02/2009

0

Boa noite, estou com um problema quando preciso atualizar a versao dos meus executáveis nos clientes.

Utilizo diversos executáveis, e sempre que peço ao meu sistema para atualiza-los o cliente sempre esquece de fechar todas as aplicações. Entao gostaria de uma ajuda para poder fechar os programas que eu desejar antes de processar as atualizaçoes?

Existe uma forma de fazer isso de maneira transparente e simples?

Lembrando que quando se trata de ´usuários´ um simples clique no fechar se torna um grande favor ao desenvolvedor rsrsrs




Abraço!


Henry Lima

Henry Lima

Responder

Posts

10/02/2009

Sebastiaoarm

Olhe a função:

function Mata(Programa: String);
var
  Comando: String;
  SUInfo: TStartupInfo;
  ProcInfo: TProcessInformation;
begin
  FillChar(SUInfo, SizeOf(SUInfo), #0);
  with SUInfo do
  begin
    cb := SizeOf(SUInfo);
    dwFlags := STARTF_USESHOWWINDOW;
    wShowWindow := SW_HIDE;
  end;
  Comando := ´cmd.exe /c TASKKILL /F /IM ´ + Programa + ´ /T´;
  CreateProcess(nil,
                PChar(Comando),
                nil,
                nil,
                False,
                CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS,
                nil,
                nil,
                SUInfo,
                ProcInfo);
end;


Exemplo de uso, fechando a calculadora do Windows:

begin
  Mata(´calc.exe´);
end;


No Windows XP eu tenho certeza que funciona.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar