Jump to content
Fórum Script Brasil
  • 0

Verificar Se Processo Criado Ainda Esta Aberto


thiagodede
 Share

Question

Fala Pessoal.. preciso de uma ajuda e não to achando.

Faço uma chamada ao Outlook Express atraves de um SHellExecute, e preciso saber se a janela esta aberta, pois so libero meu programa quando a pessoa fechar a janela criada, seja enviando o email ou fechando apenas, porem não to sabendo como fazer essa verificacao. não achei nenhum comando de chamada de programa externo que me retorne o Handle da janela Criada para fazer um teste com o IsWindows...

Vlw...

A chamada esta assim!

ShellExecute(lJanela,PAnsiChar('open'),PAnsiChar('C:\Arquivos de programas\Outlook Express\MSIMN.EXE'),

PAnsiChar('/eml:' + C_CAM_TEMP_USER + lNomeFile), nil, SW_SHOWMAXIMIZED);

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Ai galera.. resolvido...

Achei esse codigo Aqui... que utiliza as dicas que estao no link postado na resposta anterior!!

Valeu pela atencao ai...

A quem ajudar.. está aqui o codigo

function ExecAndWait(const FileName, Params: string; const WindowState: Word): boolean;
var SUInfo: TStartupInfo;
    ProcInfo: TProcessInformation;
    CmdLine: string;
begin
{ Coloca o nome do arquivo entre aspas. Isto é necessário devido aos espaços contidos em nomes longos }
  CmdLine := '"' + Filename + '"' + Params;
  FillChar(SUInfo, SizeOf(SUInfo), #0);
  with SUInfo do
    begin
      cb := SizeOf(SUInfo);
      dwFlags := STARTF_USESHOWWINDOW;
      wShowWindow := WindowState;
    end;
  Result := CreateProcess(nil, PChar(CmdLine), nil, nil, false,
  CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil,
  PChar(ExtractFilePath(Filename)), SUInfo, ProcInfo);
  { Aguarda até ser finalizado }
  if Result then
    begin
      WaitForSingleObject(ProcInfo.hProcess, INFINITE);
      { Libera os Handles }
      CloseHandle(ProcInfo.hProcess);
      CloseHandle(ProcInfo.hThread);
    end;
end;

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.8k
    • Total Posts
      648.7k
×
×
  • Create New...