En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.

Recherche

Recherche

Les mémos

Je débute...

Visites

 1223165 visiteurs

 11 visiteurs en ligne

Nous contacter

Contact

Lister les applications

Lister et/ou fermer des applications actives

Pour fermer une application, on écrira par exemple :

KillApp "Microsoft Excel - classeur.xls"


 

Option Compare Database
Option Explicit
'/
'/ A placer dans la partie déclarative
'/
Declare Function EnumWindows Lib "user32" (ByVal wndenmprc As Long, _
                                           ByVal lParam As Long) As Long

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" _
                               (ByVal hwnd As Long, ByVal lpString As String, _
                                ByVal cch As Long) As Long

Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
                             (ByVal hwnd As Long, ByVal wMsg As Long, _
                              ByVal wParam As Long, lParam As Any) As Long

Private AppCible As String

 La sub  qui permet l'appel...

Public Sub KillApp(App_Cherchee As String)
    AppCible = App_Cherchee
    EnumWindows AddressOf EnumCallback, 0
End Sub

... à la fonction

Public Function EnumCallback(ByVal app_hWnd As Long, ByVal param As Long) As Long
    Dim buf As String * 256
    Dim Titre As String
    Dim Longueur As Long
    Const WM_CLOSE = &H10

    Longueur = GetWindowText(app_hWnd, buf, Len(buf))
    Titre = Left$(buf, Longueur)

    If InStr(Titre, AppCible) <> 0 Then
        If MsgBox("Voulez vous fermer l'application " & Titre, _
                  vbQuestion + vbYesNo, "Fermeture") = vbYes Then
            'ferme l'appli
            SendMessage app_hWnd, WM_CLOSE, 0, 0
        End If
    End If

    'Poursuit l'énumération
    EnumCallback = 1

End Function


Catégorie : Les mémos - Administration
Page lue 5219 fois

Vous êtes ici :   Accueil » Lister les applications