DouglasP 1 Denunciar post Postado Maio 6, 2009 Não sei se muitos aqui conheçem o "WinSight32" é um utilitario que eu saiba que vem instalado junto ao delphi 7, ele pega a classe do programa, porem estava precisando criar um programa que eu selecionasse o exe atraves de um dialogbox e ele informasse a classe, seria possivel ?, se sim como. grato. Compartilhar este post Link para o post Compartilhar em outros sites
Thiago Dram 0 Denunciar post Postado Maio 6, 2009 Pra fazer seu aplicaitvo obter informações de uma janela de outro aplicativo, primeiramente é necessário obter o handle dessa janela. Pra conseguir o handle da janela alvo, existem várias maneiras diferentes, mas vou explicar apenas uma: Se você souber o título da janela alvo, use a função API do Windows: FindWindow() definida como: HWND FindWindow( LPCTSTR lpClassName, LPCTSTR lpWindowName );Exemplo de código: var handleDaJanela:HWND; ... handleDaJanela:=FindWindow(NIL,'Titulo da Janela'); Agora utilize a função API do Windows: GetClassName() definida como: int GetClassName( HWND hWnd, LPTSTR lpClassName, int nMaxCount ); Exemplo de uso: var nomeDaClasse:array[0..127] of char; n:INTEGER; ... n:=GetClassName(handleDaJanela,@nomeDaClasse, sizeof(nomeDaClasse)); if(n=0) then begin showmessage('Erro: '+inttostr(getlasterror)+' ao obter o nome da classe da janela!'); exit; end; * N é armazena o número de chars que foram copiados para o buffer nomeDaClasse. Se for 0 houve um problema ao obter a classe, senão ta sussa. Compartilhar este post Link para o post Compartilhar em outros sites
DouglasP 1 Denunciar post Postado Maio 8, 2009 Boa tarde, gostaia de saber como faço para pegar a classe de todas janelas abertas e jogar em um listbox, antigamente eu pegava o nome das janelas e listava agora preciso pegar a classe delas. grato. Aviso da moderação: evite ficar recriando tópicos sobre temas que já existem e que você mesmo criou. Na próxima, em vez de mesclar o tópico com o anterior eu vou simplesmente deletá-lo, considerando-o post duplicado. Chrnos Compartilhar este post Link para o post Compartilhar em outros sites
DouglasP 1 Denunciar post Postado Maio 9, 2009 Boa noite, como faço para pegar a classe de todas janelas ativas e listar em um listbox? grato. esse codigo pega so da que esta em focus: var H: HWND; ClassName: Array[0..255] of Char; begin H := GetForegroundWindow; GetClassName(H, ClassName, SizeOf(ClassName)); Memo1.Lines.Add('Classe-> '+ClassName); Timer1.Enabled := False end; Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Maio 10, 2009 isso não seria herança de classes ? "Class inheritance" http://delphi.about.com/od/oopindelphi/a/delphi_oop4.htm Compartilhar este post Link para o post Compartilhar em outros sites