Visual Basic - Problema con msgbox Autocerrado

Life is soft - evento anual de software empresarial
 
Vista:

Problema con msgbox Autocerrado

Publicado por Berenice (15 intervenciones) el 25/04/2007 16:54:55
Buenos dias a todos!!

Tengo un problema que me esta atormentando, ya que me tiene detenido todo un proceso...

Uso un mensaje que se cierra solito, es decir, es de Autocerrado, y tengo el siguiente codigo:

'En el modulo tengo:

Public Const NV_CLOSEMSGBOX As Long = &H5000&
Public Declare Function SetTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&, _
ByVal uElapse&, ByVal lpTimerFunc&)
Public Declare Function FindWindow& Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName$, ByVal lpWindowName$)
Public Declare Function LockWindowUpdate& Lib "user32" (ByVal hwndLock&)
Public Declare Function SetForegroundWindow& Lib "user32" (ByVal hWnd&)
Public Declare Function MessageBox& Lib "user32" Alias "MessageBoxA" _
(ByVal hWnd&, ByVal lpText$, ByVal lpCaption$, ByVal wType&)
Public Declare Function KillTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&)
Public Const API_FALSE As Long = 0&

Public Sub TimerProc(ByVal hWnd&, ByVal uMsg&, ByVal idEvent&, ByVal dwTime&)
KillTimer hWnd, idEvent
Dim hMessageBox&
hMessageBox = FindWindow("#32770", "AutoCerrado")
If hMessageBox Then
Call SetForegroundWindow(hMessageBox)
SendKeys "{enter}"
End If
Call LockWindowUpdate(API_FALSE)
End Sub

'Y en la forma tengo:
SetTimer hWnd, NV_CLOSEMSGBOX, 1000&, AddressOf TimerProc
Call MessageBox(hWnd, "Este mensaje desaparecerá en 1 segundos", "AutoCerrado", MB_ICONQUESTION Or MB_TASKMODAL)

Cuando lo corro me marca un error en MB_ICONQUESTION Or MB_TASKMODAL
me dice que no estan declaradas esas variales, que puede ser?

Tienen alguna otra manera de hacer un autocerrado?

Por favor, es muy importante para mi...

Muchas gracias de antemano...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ya lo solucione...

Publicado por Berenice (15 intervenciones) el 25/04/2007 17:09:40
Ya lo solucione....

Era un detalle muy sencillo, lo que pasaba es que no habia declarado las variables en el modulo... Asi que por si les interesa, solo agreguen estas dos lineas de codigo al inicio en el modulo y listo!!

Public Const MB_ICONQUESTION As Long = &H20&
Public Const MB_TASKMODAL As Long = &H2000&

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar