CISA FotoGallery

Statistiche

Tot. visite contenuti : 927927
Home Articoli tecnici VBA Generare avviso di sistema

Generare avviso di sistema

In una maschera inserire il seguente codice:

 

Private Declare Function IsIconic Lib "user32.dll" (ByVal hWnd As Long) As Long
Private Declare Function IsZoomed Lib "user32.dll" (ByVal hWnd As Long) As Long
Private Declare Function GetActiveWindow Lib "user32" () As Long
Private Declare Function GetParent Lib "user32.dll" (ByVal hWnd As Long) As Long
Private Declare Function ShellExecute _
Lib "shell32.dll" _
Alias "ShellExecuteA" ( _
ByVal hWnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) _
As Long
 

Private Function IsAccessMaximized() As Boolean
If IsZoomed(hWndAccessApp()) = 0 Then
IsAccessMaximized = False
Else
IsAccessMaximized = True
End If
End Function
 

Function IsAccessMinimized() As Boolean
If IsIconic(hWndAccessApp()) = 0 Then
IsAccessMinimized = False
Else
IsAccessMinimized = True
End If
End Function
 

Function IsAccessRestored()
If IsAccessMaximized() = False And _
IsAccessMinimized() = False Then
IsAccessRestored = True
Else
IsAccessRestored = False
End If
End Function
 

Sub ShellExec(PathDelFile As String)
Dim strFile As String
Dim strAction As String
Dim lngErr As Long

strFile = PathDelFile ' il file che vuoi aprire
strAction = "OPEN"
lngErr = ShellExecute(0, strAction, strFile, "", "", 0)
End Sub
 
Private Sub Form_Timer()
If IsAccessMinimized = True Then
ShellExec ("c:\Iconizzato.vbs")
End If
If IsAccessMaximized = True Then
ShellExec ("C:\Ingrandito.vbs")
End If
If IsAccessRestored = True Then
ShellExec ("C:\Finestra.vbs")
End If
End Sub
 
 
Poi con Notepad creare tre file e scrivere rispettivamente:
 
msgbox "Il programma è ingrandito."
 
msgbox "Il programma è iconizzato."
 
msgbox "Il programma è in modo finestra."
 
Salvarli in C:\ 
 
Ingrandito.vbs
Iconizzato.vbs
Finestra.vbs

(Nota per salvare i file in notepad con un formato diverso da txt, quando si sceglie dal menù file "Salva con nome", in "Salva come" scegliere "Tutti i file" altrimenti verrà letto come testo)
 
Note 
 
IsIconic  rileva se una data finestra sia iconizzata o no. La funzione restituisce 0 se la finestra non è iconizzata (potrebbe essere sia massimizzata che in modo finestra ); restituisce un valore diverso da zero se la finestra è iconizzata.
 
IsZoomed rileva se una data finestra sia massimizzata o no. La funzione restituisce 0 se la finestra non è massimizzata (potrebbe essere sia in modo finestra che iconizzata); restituisce un valore diverso da zero se la finestra è massimizzata.
 
Si allega un demo.
Attachments:
Download this file (GenAvv.zip)Allegato12 Kb