De las paginas del Guille, yo saque esta adaptacion:
Para saber si un programa esta cargado:
If bProgramaActivo(Frm.hWnd, "NombrePrograma") Then
>>>elprograma esta cargado en memoria<<<
endif
Function bProgramaActivo(nHwndTemp As Long, sProgramaTemp As String) As
Boolean
sProgramaTemp = UCase(sProgramaTemp)
nNextHwnd = GetWindow(nHwndTemp, GW_HWNDFIRST)
Do Until nNextHwnd = 0
If Not nHwndTemp = nNextHwnd And GetWindow(nNextHwnd, GW_OWNER)
= 0 Then
Length = GetWindowTextLength(nNextHwnd)
If Not Length = 0 Then
sNombreProgramaActivo = Space(Length + 1)
Length = GetWindowText(nNextHwnd, sNombreProgramaActivo,
Length + 1)
sNombreProgramaActivo = UCase(Left(sNombreProgramaActivo,
Length))
If sProgramaTemp = sNombreProgramaActivo Then
bProgramaActivo = True
Exit Do
End If
End If
End If
nNextHwnd = GetWindow(nNextHwnd, GW_HWNDNEXT)
Loop
End Function
Espero que te sirva.
Un saludo
+++++++++++++++++++++
Pablo Leyva
Madrid/Espana
mailto:pleyva@ssa.siemens.es
+++++++++++++++++++++
_______________________ Separador de respuesta _____________
> ----------
> De: vb-rec@ccc.uba.ar[SMTP:vb-rec@ccc.uba.ar]
> Responder a: vb-esp@ccc.uba.ar
> Enviado el: lunes 1 de diciembre de 1997 18:46
> Para: vb-esp@ccc.uba.ar
> Asunto: (VB-ESP) GetModuleHandle en Win32
>
> Hola a todos !
>
> Se me ha presentado un problema que creo no es nuevo para muchos
> de vosotros. La pregunta es: ?existe alguna funcion que te pueda
> devolver el handle de un modulo o en su defecto saber si esta
> ejecutandose en un momento dado una aplicacion,
> en el entorno Win32 ?
>
> Dicha aplicacion puede estar en memoria antes de ejecutar mi programa,
> y normalmente esta oculta ya que se trata de un servidor de base de
> datos (PC-Express).
>
> GetModuleHandle cumple con su cometido en Win16,
> pero no en Win32.
>
> ? hay alguien que pueda darme alguna pista ?
>
>
> Gracias de antemano y un saludo
>