Ir para conteúdo
Fórum Script Brasil
  • 0

Finalizar programa pelo delphi


hakcnoob

Pergunta

Seguinte, estou querendo montar um programa que feche uma ou mais janela quando eu clicar em um botao

Exemplo: Eu Tenho Uma Janela Com O Nome "orkut - início - Mozilla firefox" e queria fechar ela com o meu programa.

Eu dei uma pesquisada e achei o seguinte codigo

var
  janela : HWND;
begin
janela := findwindow(nil,'orkut');


  postmessage(janela,WM_close,0,0)

Ai Esta minha duvida eu não qro por o nome " orkut - início - Mozilla firefox " inteiro no meu codigo para fechar.

Eu quero por apenas "orkut".

Existe como eu por apenas "orkut" ??????

Desde já Obrigado. !

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Ai Esta minha duvida eu não qro por o nome " orkut - início - Mozilla firefox " inteiro no meu codigo para fechar.

Eu quero por apenas "orkut".

procedure TForm1.Button1Click(Sender: TObject);
var
  janela : HWND;
begin
  janela := findwindow(nil,'orkut');
  postmessage(janela,WM_close,0,0)
end;

o nome deve ser identico ao da título da janela senão ela não será localizada.

alguma coisa parecida com isto

http://forum.imasters.uol.com.br/index.php...st&p=189733

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

mas existe algum codigo que por exemplo ... eu coloco a palavra "orkut" e ele completa a palavra com de acordo com as janelas que estao aberta

tpow se tiver la "orkut - lalala" e "orkut xxxxx" fecha as 2 janelas ...

existe ??

existir não existe, mas voce pode criar este codigo

primeiro voce deve listar todas as janelas abertas no windows quando o seu programa estiver sendo executado

The EnumWindowsProc function is an application-defined callback function that receives top-level window handles as a result of a call to the EnumWindows or EnumDesktopWindows function.

nesta lista vão aparecer todas as janelas abertas do windows inclusive as do programa

The EnumWindows function enumerates all top-level windows on the screen by passing the handle of each window, in turn, to an application-defined callback function. EnumWindows continues until the last top-level window is enumerated or the callback function returns FALSE.

voce deverá então buscar nesta lista parte do nome que deseja ( se tiver la "orkut - lalala" e "orkut xxxxx" )

function Pos(Substr: string; S: string): Integer;

Description

Pos searches for a substring, Substr, in a string, S. Substr and S are string-type expressions.

Pos searches for Substr within S and returns an integer value that is the index of the first character of Substr within S. Pos is case-sensitive. If Substr is not found, Pos returns zero.

uma vez encontrado o(s) nome(s) , então voce pode fechar a(s) janela(s) finalizando o processo

creio que com estas 3 funções ou + é possivel fazer o que voce esta querendo.

se eu tiver tempo monto alguma coisa, ou voce pode tentar montar o codigo

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
mas existe algum codigo que por exemplo ... eu coloco a palavra "orkut" e ele completa a palavra com de acordo com as janelas que estao aberta

tpow se tiver la "orkut - lalala" e "orkut xxxxx" fecha as 2 janelas ...

Faça uso das funções API - EnumWindows e GetWindowText

Veja este exemplo do colega Graymalkin. No procedimento EnumWindowsProc, você deverá utilizar GetWindowText para retornar o título da janela. De posse dele, você poderá utilizar a função Pos para procurar pelo sub-string desejado e, encontrando, faz o que "bem entende" com ela.

Abraços

p.s. já que o Jhonas postou primeiro que eu, fica como complemento.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...