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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Ayuda SendMessage y Captions
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda SendMessage y Captions  (Leído 2,460 veces)
Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Ayuda SendMessage y Captions
« en: 17 Octubre 2009, 04:08 am »

Estoy tratando de leer el Static de una ventana de Dialog de Windows, la que dice:

No se puede tener acceso a 'xxxx'

Acceso Denegado.


Ya logre obtener el handle del dialog con:
Código:
FindWindow("#32770", "Explorador de Windows")

Y comprobando que ese fuera el hWnd usando a SendMessage par obtener el caption y asi comprobar si realmente es la ventana, entonces... uso FindWindowEx para obtener el Static interno del dialog cuya class es "Static" y retorna 0 el handle:
Código:
FindWindowEx(FindWindow("#32770", "Explorador de Windows"), 0, 0, "Static")

Que debo hacer para obtener el texto de ese Static?

Gracias.


En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda SendMessage y Captions
« Respuesta #1 en: 17 Octubre 2009, 05:55 am »

Hola, al parecer esta mal el FindWindowEx, el nombre de clase va en el primer parametro...aca te paso un ejemplo de lo que queres en visual basic 6, facil de pasar a .NET.

Código
  1. Option Explicit
  2.  
  3. Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
  4. Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
  5. Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
  6. Private Const WM_GETTEXT = &HD
  7.  
  8. Private Sub Command1_Click()
  9.    Dim vHwndPadre As Long, vHwndHijo As Long, vHwndHijo2 As Long
  10.    Dim vTexto As String * 256
  11.  
  12.    vHwndPadre = FindWindow("#32770", vbNullString)
  13.    vHwndHijo = FindWindowEx(vHwndPadre, 0, "Static", vbNullString)
  14.    vHwndHijo2 = FindWindowEx(vHwndPadre, vHwndHijo, "Static", vbNullString)
  15.  
  16.    Call SendMessage(vHwndHijo2, WM_GETTEXT, 256, vTexto)
  17.  
  18.    MsgBox vTexto
  19. End Sub

lo probe con un mensaje de windows simulando un mensaje de error.

saludos.


En línea

Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: Ayuda SendMessage y Captions
« Respuesta #2 en: 18 Octubre 2009, 00:04 am »

Muchas gracias sirvio perfecto ^^
En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
API Sendmessage en una Shell
Programación Visual Basic
Elemental Code 7 4,352 Último mensaje 8 Enero 2011, 02:13 am
por Karcrack
SendMessage
Programación C/C++
calk9 5 3,430 Último mensaje 14 Septiembre 2011, 19:52 pm
por Eternal Idol
SendMessage
Programación Visual Basic
calk9 6 2,589 Último mensaje 20 Septiembre 2011, 00:53 am
por calk9
Ayuda con click usando SendMessage (presionar y levantar)
.NET (C#, VB.NET, ASP)
GonzaFz 1 2,325 Último mensaje 15 Junio 2012, 00:44 am
por GonzaFz
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines