IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Verifier si outlook est lancé [AC-97]


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 23
    Points : 17
    Points
    17
    Par défaut Verifier si outlook est lancé
    Bonjour,

    Comment vérifier que outlook est déja lancé .

    merci
    Aeefred

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    on peut le faire par automation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function OutlookOuvert() As Boolean
    Dim oOL As Object
     
    On Error Resume Next
    Set oOL = GetObject(, "Outlook.Application")
    On Error GoTo 0
     
    OutlookOuvert = Not (oOL Is Nothing)
    Set oOL = Nothing
    End Function
    A+

  3. #3
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Bonjour,

    Voici deux fonctions permettant de tester par contre je ne sais pas si cest compatible avec A97 :

    1-
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Function ApplyLancee(strChemin As String) As Boolean
     
        On Error Resume Next
     
        Open strChemin For Binary Access Read Write Lock Read Write As #1
        Close #1
     
        If Err.Number <> 0 Then
            ApplyLancee = True
            Err.Clear
        End If
     
    End Function
    appel (mettre le bon chemin de l'application):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub btntest_Click()
        If ApplyLancee("C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE") = True Then
            MsgBox "application lancéé"
        Else
            MsgBox "non lancée"
        End If
    End Sub
    Bon pour la deuxième, LedzeppII a été plus rapide. Pour la première ceci nécessie de connître le chemein de l'application. Pour la seconde elle ouvre une instance d'Outlook, je suis moins fan

    par contre à tester pour A97.

    @+

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 23
    Points : 17
    Points
    17
    Par défaut Résolu
    Encore une fois merci au forum

    c'est la Solution

    Aeefred

  5. #5
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Citation Envoyé par Dolphy35 Voir le message
    Bon pour la deuxième, LedzeppII a été plus rapide. ... . Pour la seconde elle ouvre une instance d'Outlook, je suis moins fan
    Non, elle n'ouvre pas Outlook
    C'est un GetObject, pas un CreateObject.

    A+

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 23
    Points : 17
    Points
    17
    Par défaut ma solution
    J'ai mis le code suivant et ca marche,
    actuellement je suis en access 2000
    et dois passer sous peu en access 2007

    Je teste avec la fonction ci-dessus et lance ootlouk si il n'est pas lancé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Not OutlookOuvert Then
             Shell "C:\Program Files\Microsoft Office\Office12\outlook.exe", vbNormalFocus
    End If
    Aeefred

  7. #7
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut

    Citation Envoyé par LedZeppII Voir le message
    Non, elle n'ouvre pas Outlook
    C'est un GetObject, pas un CreateObject.

    A+
    All rights, je n'avais pas fait gaffe. J'ai souvent vu ce code avec CreateObject.

    Nickel

    @++

  8. #8
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Tant que j'y suis, une troisième méthode.
    Elle s'appuie sur WMI (introduit dans windows 2000 SP2).

    Cette fonction renvoie le nombre de processus pour un exécutable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Function GetProcessesCount(strAppExeName As String) As Long
        Dim oSvc As Object
        Dim sQuery As String
        Dim oProcs As Object, lgCnt As Long
     
        Set oSvc = GetObject("winmgmts:root\cimv2")
        sQuery = "select * from win32_process where name='" & strAppExeName & "'"
        Set oProcs = oSvc.ExecQuery(sQuery)
        lgCnt = oProcs.Count
        Set oProcs = Nothing
        Set oSvc = Nothing
     
        GetProcessesCount = lgCnt
    End Function
    Exemple d'utilisation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub testIsRunning()
    Dim strExeName As String, lgInstances As Long
     
    strExeName = "outlook.exe"
     
    lgInstances = GetProcessesCount(strExeName)
    If lgInstances = 0 Then
       MsgBox strExeName & " : aucune exécution en cours"
    Else
       MsgBox strExeName & " : " & lgInstances & " instance" & IIf(lgInstances > 1, "s", "")
    End If
    End Sub
    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 15/06/2015, 08h39
  2. Verifier si un form est lancé (et l'actualiser) ou non
    Par Le gris dans le forum Windows Forms
    Réponses: 2
    Dernier message: 17/12/2012, 17h44
  3. Verifier qu'un processus est lancé.
    Par thebarbarius dans le forum Langage
    Réponses: 9
    Dernier message: 19/08/2012, 11h38
  4. Verifier si un process est lancé.
    Par tdelacou dans le forum VBScript
    Réponses: 3
    Dernier message: 22/06/2008, 17h59
  5. Savoir si un logiciel est lancé
    Par LoicH dans le forum C++Builder
    Réponses: 2
    Dernier message: 17/12/2004, 23h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo