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 :

Creer A service (client microsoft)


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Par défaut Creer A service (client microsoft)
    Salut tt le monde,
    je souhaite automatiser l'ajout du client microsoft sur ds stations Windows_XP :
    je crois que c'est possible si j'arrive a creer et demarrer le service lanmanworkstation :

    Voici le script que j'utilise pr la creation du service :
    'install le service station de travail (client microsoft)

    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
    strComputer = "." 
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
    Set objShare =
    objWMIService.Get("Win32_Service.Name='LanmanWorkstation'")
     
    Set objInParam = objShare.Methods_("Create"). _
        inParameters.SpawnInstance_()
     
    objInParam.Properties_.Item("DesktopInteract") =  "false"
    objInParam.Properties_.Item("DisplayName") =  "Station de travail"
    objInParam.Properties_.Item("ErrorControl") =  1
    objInParam.Properties_.Item("LoadOrderGroup") =  "NetworkProvider"
    objInParam.Properties_.Item("Name") =  "lanmanworkstation"
    objInParam.Properties_.Item("PathName") =  "C:\WINDOWS\System32\svchost.exe -k netsvcs"
    objInParam.Properties_.Item("ServiceType") =  32
    objInParam.Properties_.Item("StartMode") =  "Automatic"
    objInParam.Properties_.Item("StartPassword") =  "NULL"
     
    Set objOutParams = objWMIService.ExecMethod("Win32_Service.Name='LanmanWorkstation'", "Create", objInParam)
    Wscript.Echo "Out Parameters: "
    Wscript.echo "ReturnValue: " & objOutParams.ReturnValue
    => l'exec. du script me retourne ce mssg d'erreur :
    (29,1) SwbemServiceEx : methode non valide

    quelqu'1 peut il m'aider a debugger ce script ou ajouter ce module 'client reseau miscrosoft' d'1 autre manier ???

  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 : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Remplace ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set objShare =
    objWMIService.Get("Win32_Service.Name='LanmanWorkstation'")
    par ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    objWMIService.ExecQuery("SELECT * FROM Win32_Service WHERE Name = 'LanmanWorkstation'")
    (29,1) SwbemServiceEx : methode non valide
    29 est la ligne ou l'exception est levée.
    Ce serait sympas de nous dire laquelle c'est, parce que la il n'y que 22 lignes, donc pour deviner quelle est la 29 ligne c'est pas facile

    Sinon faux que j'aille au monoprix du coin me racheter une boule de crystal

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Par défaut
    oups, je n'ai pas tenu compte du n° de la ligne apres aoir supprimé ls commentaires lors du post.

    Effectivement, l'erreur est placé sr la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set objShare = objWMIService.Get("Win32_Service.Name='LanmanWorkstation'")
    Apres avoir corrigé par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set objshare = objWMIService.ExecQuery("SELECT * FROM Win32_Service WHERE Name = 'LanmanWorkstation'")
    j'obtiens : l'erreur a la ligne 13 =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set objInParam = objShare.Methods_("Create"). _
        inParameters.SpawnInstance_()
    cet objet ne gere pas cette propriete ou cette methode : 'objshare.Methods_'

  4. #4
    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 : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Ok c'est tes méthode qui sont fausses.
    Tu as pris un code VB6 ou VBA non ?
    Cela n'est pas la même chose en VBS, déjà pas de Get.

    Pour les clé de registre j'utilise une méthode s'appelant CreateKey après avoir obtenu l'objet utilisé.
    Tu dois avoir le même genre de chose pour Win32_Service.
    D'ailleurs c'est le cas, regarde ici.

    D'ailleurs c'est l'aide MSDN, tu as le glossaire des classe WMI, donc tu pourras tout corrigé toi même, car je pense que tu auras d'autre erreur du même genre jusqu'à ce que tu es tout modifié.

    Bon courage

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 4
    Par défaut
    le script a ete genere avc l'outil wmi code creator et en selectionnant le type de langage = vbscript.
    PAr contre, j'essaie avc 1 autre script recupéré sr le web mais le resultat n'est pas probant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ' install 1 services 
    Const OWN_PROCESS = 20
    Const NOT_INTERACTIVE = "false"
    Const NORMAL_ERROR_CONTROL = 1
     
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
     Set objService = objWMIService.Get("Win32_Service")
     errReturn = objService.Create("lanmanserver" ,"Serveur" , _
        "c:\windows\System32\svchost.exe -k netsvcs", OWN_PROCESS, NORMAL_ERROR_CONTROL,_
            "Automatic", NOT_INTERACTIVE, "NT AUTHORITY\LocalService", ""  )
    je precise qe je debute ds vbscript, alors si qlq1 peut m'aider a debugger ce script, je ss preneur.
    +
    Willy97

  6. #6
    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 : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Peux tu nous en dire un peu plus sur le résultat ?
    Une erreur ?
    Le service n'est pas créer ?

Discussions similaires

  1. Creer un service Web client
    Par roudoudouduo dans le forum Services Web
    Réponses: 6
    Dernier message: 08/04/2011, 16h33
  2. creer un web service client avec axis
    Par m3allem001 dans le forum Services Web
    Réponses: 1
    Dernier message: 06/06/2009, 22h46
  3. Réponses: 6
    Dernier message: 21/04/2009, 10h03
  4. créer un service windows
    Par t_om84 dans le forum Général Python
    Réponses: 1
    Dernier message: 19/04/2006, 11h26
  5. [installation] creer un service pour une bdd
    Par Chafaq dans le forum Oracle
    Réponses: 1
    Dernier message: 25/01/2006, 12h31

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