Pregunta: | 3623 - COMO SABER SI UN FORM ESTA ABIERTO |
Autor: | chicho chicho |
Hola, necesito saber como averiguar si un form esta abierto. Muchas Gracias. |
Respuesta: | Santiago Franchi |
Debes usar la función API FindWindow. Aqui va un ejemplo: ´Código para el Modulo Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long ´Creamos una función que nos indicara si una aplicación determinada esta abierta Function EsUnico(TituloVentana As String) As Long ´Buscar una ventana con una Caption determinado y devuelve 0 si no la encuentra, y sino, el manejador de la misma Dim hWnd As Long hWnd = FindWindow(vbNullString, TituloVentana) EsUnico = IIf(hWnd = 0, 0, hWnd) End Function ´Código para el procedimiento Dim CadenaResultante As Long CadenaResultante = EsUnico("Nombre_Caption_del_programa") If CadenaResultante <> 0 Then Print "la aplicacion esta en uso" |