Pegar nome do form em outro aplicativo
20/11/2009
0
Bom dia amigos.
Estou tendo muita dificuldade em pegar o nome de um form (exemplo o da calculadora) a partir de seu HWND.Tenho uma função que percorre os Handles de um programa e consegue eficazmente capturar a classe e seu título com as funções GetClassName e GetWindowText respectivamente. Entretanto é de meu extremo interesse capturar o nome do form, coisa esta que não estou obtendo êxito nem com GetProp (talvez eu não esteja sabendo como usar) e nem com SendMessage. Aliás como eu tenho o Handle do form da outra aplicação gostaria de saber como é possível, talvez, fazer um typecast ou ponteiro do seu handle e assim ter acesso ao nome do form.// Exemplo de mais ou menos o que eu precisovar FormHandle: HWND;begin FormHandle := FindWindow(nil, 'Calculadora'); ShowMessage(TWinControl(FormHandle).Name);end;
Marcos Rocha
Curtir tópico
+ 0
Responder
Posts
20/11/2009
Marcos Iwazaki
var
aName: array [0..255] of Char;
if Boolean(GetClassName(hWnd, aName, 256)) then
ShowMessage( 'ClassName : ' + string(aName) )
else
ShowMessage( 'ClassName : not found');
end;
aName: array [0..255] of Char;
if Boolean(GetClassName(hWnd, aName, 256)) then
ShowMessage( 'ClassName : ' + string(aName) )
else
ShowMessage( 'ClassName : not found');
end;
Responder
20/11/2009
Marcos Rocha
Amigo não é a Classe do form que eu preciso, e sim o NOME.
Veja que posso ter um form chamado CalcPlusTabajara que seja da classe TCalculadora, então realmente preciso saber o NOME do infeliz.
Responder
Clique aqui para fazer login e interagir na Comunidade :)