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

VBScript Discussion :

Status d'un ou plusieurs composant COM+


Sujet :

VBScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut Status d'un ou plusieurs composant COM+
    Bonjour,

    j'aimerais afficher via un script VBS, l'état d'un composant COM+.

    voici le bout de code que j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Dim sAppName
    sAppName = "System Application"
    Set objCatalog = CreateObject("COMAdmin.COMAdminCatalog")
    Dim apps
    Set apps = objCatalog.GetCollection("Applications")
    apps.Populate
     
    ' Enumerate through applications looking for AppName.
    Dim app
    Dim state
    For Each app In apps
    If app.Name = sAppName Then
    state = objCatalog.ServiceCheck(app.Value("ServiceName"))
    Wscript.Echo state
    End If
    Next
    je sais que ma methode "objCatalog.ServiceCheck" n'est pas bonne, mais je ne sais pas l'utiliser.

    Qui aurait l'amabilité de me venir en aide ?

    Merci par avance

    Yoann

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Est ce que cette page te permet de comprendre comment utiliser l'objet ?
    http://msdn2.microsoft.com/en-us/library/ms686842.aspx
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Difficilement, j'étais dejà tomber dessus

    je vais essyer de rentre + en profondeur.

    Si tu as une idée, je suis preuneur.

  4. #4
    Membre averti
    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 57

    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Points : 341
    Points
    341
    Par défaut
    Salut,

    voici ce que me sort le scriptomatic :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    On Error Resume Next
     
    Const wbemFlagReturnImmediately = &h10
    Const wbemFlagForwardOnly = &h20
     
    arrComputers = Array("L3CFL14")
    For Each strComputer In arrComputers
       WScript.Echo
       WScript.Echo "=========================================="
       WScript.Echo "Computer: " & strComputer
       WScript.Echo "=========================================="
     
       Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
       Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_DCOMApplication", "WQL", _
                                              wbemFlagReturnImmediately + wbemFlagForwardOnly)
     
       For Each objItem In colItems
          WScript.Echo "AppID: " & objItem.AppID
          WScript.Echo "Caption: " & objItem.Caption
          WScript.Echo "Description: " & objItem.Description
          WScript.Echo "InstallDate: " & WMIDateStringToDate(objItem.InstallDate)
          WScript.Echo "Name: " & objItem.Name
          WScript.Echo "Status: " & objItem.Status
          WScript.Echo
       Next
    Next
     
     
    Function WMIDateStringToDate(dtmDate)
    WScript.Echo dtm: 
    	WMIDateStringToDate = CDate(Mid(dtmDate, 5, 2) & "/" & _
    	Mid(dtmDate, 7, 2) & "/" & Left(dtmDate, 4) _
    	& " " & Mid (dtmDate, 9, 2) & ":" & Mid(dtmDate, 11, 2) & ":" & Mid(dtmDate,13, 2))
    End Function
    Avec WMI Namespace = root\cimv2 et WMI class = Win32_DCOMApplication

    Pour les p'tits malheureux qui seraient passé à coté du scriptomatic V2 :

    http://www.microsoft.com/downloads/d...displaylang=en

    A++
    Plus tu pédales moins vite, moins t'avances plus vite.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    ce sont les application DCOM qui sont listées, et non les components services !

    mais l'outil est pas mal du tout

  6. #6
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 296
    Points : 3 549
    Points
    3 549
    Par défaut
    salut,
    ton code est du copié/collé un peu hasardeux
    en réalité, la méthode servicecheck n'a pas été bien comprise par son auteur original
    cette méthode n'accepte qu'une valeur (const COMAdminServiceLoadBalanceRouter=1) qui ne sert qu'à tester le component load balancing
    tu peux en revanche retirer le nom de service que prendra l'application com+ avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    app.Value("ServiceName")
    ensuite utiliser la classe WMI Win32_Service pour vérifier le statut du service
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    je ne recherche pas le status d'un service, mais plutot d'un composant COM.

    merci de ton aide

  8. #8
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 296
    Points : 3 549
    Points
    3 549
    Par défaut
    je ne recherche pas le status d'un service,
    alors ta référence à la méthode servicecheck devient incompréhensible

    qu'entends-tu par statut d'un composant ?

    (tu as remarqué qu'avec ton code, tu es resté au niveau de l'application com+ et non de ses composants)
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  9. #9
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Pour les p'tits malheureux qui seraient passé à coté du scriptomatic V2 :

    http://www.microsoft.com/downloads/d...displaylang=en
    Je ne connaissais pas, mais je le trouve très interessant
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  10. #10
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par ced600 Voir le message
    Je ne connaissais pas, mais je le trouve très interessant
    j'ai déjà utilisé ... mais jamais pris le temps de comprendre comment cela marche ...

    si une bonne âme se proposer pour nous écrire un tuto en français ... ce serai une bonne idée .... non...

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par omen999 Voir le message
    alors ta référence à la méthode servicecheck devient incompréhensible

    qu'entends-tu par statut d'un composant ?

    (tu as remarqué qu'avec ton code, tu es resté au niveau de l'application com+ et non de ses composants)
    Euh.. hmmm, mon code, je l'ai plsu ou moins récupéré
    je débute en VBS/WMI & Co

    En fait, j'ai une application qui utilise les composants COM+
    Ces derniers peuvent avoir plusieurs états (STOP, STARTED, ...)

    J'aimerais connaitre leur status.
    Status que l'on ne voit pas dans la MMC, seulement via des objets.

    Actuellement, j'arrive à arreter ou démarrer les composants COM+, mais ça s'arrette là

    voilou.

  12. #12
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 296
    Points : 3 549
    Points
    3 549
    Par défaut
    hmmm, mon code, je l'ai plsu ou moins récupéré
    j'avais remarqué...
    donc il ne s'agirait pas d'une application serveur mais d'une application bibliothèque et dont le nom n'est pas "System Application"
    il ne me semble pas que l'objet administration com+ permette de connaitre l'état de ton composant.
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par omen999 Voir le message
    j'avais remarqué...
    donc il ne s'agirait pas d'une application serveur mais d'une application bibliothèque et dont le nom n'est pas "System Application"
    il ne me semble pas que l'objet administration com+ permette de connaitre l'état de ton composant.
    system application était seulement pour faire le test avec le composant "System Application" sui se trouve dans les composant COM+

    Sinon, j'ai récupéré 2/3 trucs, je vais essayer d'en tirer quelqueschoses.

    je vosu tiens au jus

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/12/2010, 16h38
  2. [C#] C# et composant COM
    Par beway dans le forum Windows Forms
    Réponses: 5
    Dernier message: 08/11/2004, 08h56
  3. [C#] Une seule méthode pour plusieurs composants
    Par niPrM dans le forum Windows Forms
    Réponses: 8
    Dernier message: 01/06/2004, 14h41
  4. Composant COM et style XP
    Par Reisubar dans le forum Composants VCL
    Réponses: 7
    Dernier message: 10/11/2003, 19h23
  5. Réponses: 4
    Dernier message: 06/11/2003, 10h37

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