Ver Mensaje Individual
  #13  
Antiguo 18-11-2005
Aztaroth Aztaroth is offline
Miembro
 
Registrado: dic 2003
Ubicación: Matamoros
Posts: 52
Reputación: 21
Aztaroth Va por buen camino
Cerrar programas

Estas son las funciones que utilizo para obtener el nombre de las Clases y Titulos de las ventanas de todas las aplicaciones que se esten ejecutando en Windows, esta hecha en Borland C++, perdon pero es que antes programaba casi todo en C++, muy pco el delphi, pero no deberias de tener el mayor problema para transcribir al Delphi.

Te creas una nueva aplicacion en delphi, agregas 2 TMemo una que diga clases y otra que diga titulos y un boton


// Evento dle boton
void __fastcall TmainForm::btnEnumClick(TObject *Sender)
{
titulos->Items->Clear();
clases->Items->Clear();
EnumWindows((WNDENUMPROC)GetWinHandleAll, NULL);
}
//---------------------------------------------------------------------------


bool __stdcall GetWinHandleAll(HWND hWnd, long hproc)
{
mainForm->ProcessHandleInformation(hWnd);
if(hWnd != NULL) return true;
return false;
}



void __fastcall TmainForm::ProcessHandleInformation(HWND h_window)
{
char classname[80];
char windowtitle[80];
// Obtener los valores de Titulo y clase de la ventana o proceso
GetWindowText(h_window, windowtitle, 80);
GetClassName(h_window, classname, 80);

//Agregalos a los TMemos
titulos->Items->Add(windowtitle);
clases->Items->Add(classname);

}
//---------------------------------------------------------------------------


//Cuando se seleccione un item de titulos seleccione tambien el nombre de la clase para saber cual es exactamente
void __fastcall TmainForm::titulosClick(TObject *Sender)
{
clases->ItemIndex = titulos->ItemIndex;
}
//---------------------------------------------------------------------------

//Si se selecciona la clase saber el titulo de la ventana
void __fastcall TmainForm::clasesClick(TObject *Sender)
{
titulos->ItemIndex = clases->ItemIndex ;
}
//-------------------------------------------------------------------------


Hay un libro en pdf que te dice como hacerlo en delphi no recuerdo el nombre.
Responder Con Cita