elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  Programa para saver Nombre de clase????
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Programa para saver Nombre de clase????  (Leído 5,196 veces)
Riki_89D


Desconectado Desconectado

Mensajes: 851


BCN CITY


Ver Perfil
Programa para saver Nombre de clase????
« en: 16 Enero 2010, 19:40 pm »

Hola que tal,veran saven si existe algun programa que me diga el nombre d ela clase de los controles que tiene una ventana?????? los botones,los comobobx etc etc para despues modificarlos desde mi App,intete utilizar WnumWindows,EnumWindowsChild,GetCLassName i algunas mas pero no se como hacelor nuna utilize esas Api

lo que quiero por ejemplo es saver como se dice la clase de control Donde escribimos en el MSN (por ejemplo)

nse si me entendieron



salu2


En línea

bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Programa para saber Nombre de clase????
« Respuesta #1 en: 17 Enero 2010, 05:08 am »

spy++


En línea

Riki_89D


Desconectado Desconectado

Mensajes: 851


BCN CITY


Ver Perfil
Re: Programa para saber Nombre de clase????
« Respuesta #2 en: 17 Enero 2010, 17:26 pm »

Hola gracias por tu respuesta,utilize ese soft pero nose como aplicarlo ahora con las Api FindWindow y FindWindowEx,

ese programa me dice la clase como pro ejemplo Button RichEdit i tal i me da un
handle Con NUmero,como puedo yo modificar ese control sabiendo el Handle Que me da Spy++?? lo e probado i mira tengo este code:
Código
  1. .data
  2. Ven DB 'Windows Live Messenger',0
  3. Clase db 'Button',0
  4.  
  5. .data?
  6.  
  7. Buffer db 32 dup(?)
  8.  
  9. .code
  10. start:
  11. WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD
  12. Local hand:HWND
  13. mov hand,8454538   ;Handle que me da el Spy++ :S
  14.  
  15.  
  16. invoke FindWindowEx,offset Ven,hand,offset Clase,0
  17. invoke GetWindowText,eax,OFFSET Buffer,SIZEOF Buffer
  18. invoke MessageBox,0,offset Buffer,0,0
  19.  
  20. WinMain endp
  21.  
  22. invoke ExitProcess,0
  23.  

pero nada no me funciona no me muestra el texto del boton :(


« Última modificación: 17 Enero 2010, 17:28 pm por Riki_89D » En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.958


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Programa para saber Nombre de clase????
« Respuesta #3 en: 17 Enero 2010, 18:36 pm »

TENES que leer la MSDN si queres trabajar con Windows:
http://msdn.microsoft.com/en-us/library/bb787605(VS.85).aspx

Ver por ejemplo EM_GETTEXTEX.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Saint Iker

Desconectado Desconectado

Mensajes: 19



Ver Perfil WWW
Re: Programa para saber Nombre de clase????
« Respuesta #4 en: 18 Enero 2010, 15:26 pm »

Te lo dejo en C que me da joda pasarlo a MASM.

Código:
#include <cstdio>
#include <cstdlib>
#include <windows.h>

#define MAX_CLASS 256
#define MAX_TEXT 2048
#define PROGRAM_STR "XXXXXXXXXXXXXXXXXXX"

BOOL CALLBACK EnumChildProc( HWND hWnd, LPARAM lParam)
{
char szClass[MAX_CLASS + 1];
char szText[MAX_TEXT + 1];
int iAux, iLen;

if (hWnd == NULL)
return FALSE;

memset( szText, 0x00, MAX_TEXT + 1);
memset( szClass, 0x00, MAX_CLASS + 1);

iLen = GetWindowText( hWnd, szText, MAX_TEXT);
iAux = GetClassName( hWnd, szClass, MAX_CLASS);

if (iAux <= 0 && iLen <= 0) {
printf("Unkownn Control Window Identifier[%X]\r\n", hWnd);
return TRUE;
}

printf("\tControl Class[%s], Text[%s]\r\n", szClass, szText);

EnumChildWindows( hWnd, EnumChildProc, NULL);

return TRUE;
}

BOOL CALLBACK EnumMainProc( HWND hWnd, LPARAM lParam)
{
char szText[MAX_TEXT + 1];
int iLen = 0;

if (hWnd == NULL)
return FALSE;

memset( szText, 0x00, MAX_TEXT + 1);

iLen = GetWindowText( hWnd, szText, MAX_TEXT);

if (iLen <= 0)
return TRUE;

if (stricmp( szText, PROGRAM_STR) != 0)
return TRUE;

EnumChildWindows( hWnd, EnumChildProc, NULL);

return TRUE;
}

int main( void )
{
EnumWindows( EnumMainProc, NULL);

return 0;
}

Salu2.

Att: Iker
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con el nombre de un programa
Software
Makoto 1 1,462 Último mensaje 27 Marzo 2012, 12:14 pm
por Shadow
revienme este programa me da error en la variable del nombre de la clase
Programación C/C++
eduardo17445 9 2,646 Último mensaje 8 Mayo 2013, 01:06 am
por -- KiLiaN --
Duda: ubicar una clase Textura en un programa grafico
Programación C/C++
erest0r 2 1,879 Último mensaje 12 Septiembre 2014, 03:51 am
por erest0r
nusoap.php y funciones con el mismo nombre de la clase (deprecated)
PHP
Arket 1 4,542 Último mensaje 13 Octubre 2021, 05:36 am
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines