Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: SheKeL_C$ en 11 Octubre 2006, 18:16 pm



Título: GetActiveWindow m devuelve 0
Publicado por: SheKeL_C$ en 11 Octubre 2006, 18:16 pm
Código:
Public Function VentanaActiva() As String
    Dim hWnd            As Long
   
    hWnd = GetActiveWindow
    If IsWindowVisible(hWnd) Then
        VentanaActiva = WindowTitle(hWnd)
        Exit Function
    End If
End Function

Utilizo esta funcion para que m devuelva el titulo de la ventana. Lo de WindowTitle es otra funcion.... el problema que tengo es que estoy en una carpeta o cuando genero el proyecto o el titulo del visual basic, si k m lo devuelve pero cuando es Firefox o Iexplore no m da el hwnd ( dice q es 0 ). No se donde esta el problema ya que con lo mismo codem como e dixo antes, me funcoina en unas ventanas y en otras no. :-\


Título: Re: GetActiveWindow m devuelve 0
Publicado por: NYlOn en 12 Octubre 2006, 00:43 am
El problema esta en la funcion GetActiveWindow. Solo funcion para las ventanas que corresponden a un mismo arbol de procesos. Por eso solo funciona en tu proyecto. Lo que tenes que hacer es reemplazar esa API por GetForegroundWindow.
Se usa exactamente igual...


Saludos.-