Programme present sur le serveur doit agir sur les clients [Résolu]

Signaler
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010
-
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010
-
Bonjour,

Je suis un débutant en vbs et je dois faire un programme sur un serveur qui permet de remettre en place 3 taches planifiés qui ont été supprimer au préalable sur les servis.
Je m'explique plus clairement je sais comment remettre des taches planifié je le fais en appelant le dos dans mon programme vbs mais les taches ne se remette en place que sur le serveur or elles doivent se remettre en place sur les clients et je ne peux pas me permettre de copier se programme sur chaque servis car ceux-ci sont trop nombreux

Cordialement,

10 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
possible, surement par WMI

télécharge WMI Code Creator, tu pourras surement te faire générer un .vbs tout beau tout neuf


Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
l'idée est juste de voir l'allure du script opérant a distance.

après, tu branches une requete ADSI, et zou!

pour chaque computer tu lance la requete WMI

en gros:
Set oWMI = GetObject("winmgmts:\\.\root\CIMV2") 
For each oItem In oWMI.ExecQuery("SELECT Domain FROM Win32_ComputerSystem",,48)
    sDomain = oItem.Domain
Next

Set oDomain = GetObject("WinNT://" & sDomain)
oDomain.Filter = Array("Computer")
For Each oItem In oDomain
    AddScheduledTask sDomain, oItem.Name
Next


Sub AddScheduledTask(Domain, ComputerName, User, Password)
    ....
End Sub


en ajoutant astucieusement le script généré pour un remote computer (login & pass)



Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010

Ok je vais voir ça merci de ta réponse rapide
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010

Merci c'est super comme outils!

Par contre je me retrouve en face de millier de classe wmi et je voudrais donc savoir
si quelqu'un voulait bien m'aiguiller afin de choisir la bonne classe.
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
google:

WMI Tache planifiée

www.vbfrance.com/codes/WMI-PLANIFICATEUR-TACHES_26927.aspx


Create Method of the Win32_ScheduledJob Class

msdn.microsoft.com/en-us/library/aa389389(VS.85).aspx

Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010

Merci a toi mais je sais déjà créer une tache planifié.

Dans ton premier lien on peux choisir le poste sur lequel on veut créer la tache avec son adresse IP. Mon problème est que les taches planifiées que je créé (et que j'arrive à créé) sur le serveur doivent se répliqué sur les clients.

Étant donné le nombre de poste client impacté (plusieurs centaines) je ne peux me permettre de devoir le copier et donc de l'exécuter sur chaque poste.

Donc ce qui me bloque dans mon programme est de faire en sorte que du serveur je puisse exécuter un programme qui va créer les taches planifié qui lui son demandé sur ses client.

Je voulais donc savoir comment faire? J'avais pensé à récupérer la liste des clients du serveur a partir de celui-ci afin de les rentrer dans un tableau et donc de faire une boucle for afin de faire varié les valeurs et pouvoir les envoyé une par une sur chaque client à partir du serveur.

Or je n'arrive pas à trouver de fonction qui me permette de récupérer les postes client d'un serveur.
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
WMI code creator permet de générer des scripts pour des ordinateurs distants.

voir 'target computer'

ca te donnera la syntaxe a utiliser.


Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010

Merci mais j'ai dû mal m'exprimer, je ne veux justement pas avoir à taper les nom de machines un par un. Ce que je veux c'est récupérer les nom des client de mon serveur.
L'onglet "target computer" me demande justement de rentrer les nom des clients un par un. Ce qui fait que mon programme ne sera pas portable.
Or il doit l'être. Je veux juste savoir, cela existe surement en wmi, la commande (ou la fonction) permettant de récupérer a partir du serveur (je n'ai pas à faire de manip sur les clients) la liste de ses clients.

Désolé si je ne suis pas clair.
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010

Ok merci beacoup de ta patience je vais reprendre ça tranquillement. ça doit faire 2 jour que je cherche sur le net comment faire sans poster de message. Je pense que j'hésiterai moins à poster maintenant vu la vitesse et la qualité du service.

Encore merci.
Messages postés
10
Date d'inscription
lundi 4 janvier 2010
Statut
Membre
Dernière intervention
5 mai 2010

Arg désolé mais ça ne fonctionne pas.
Cela exécute la fonction pour chaque membre du domaine.

Or sur le domaine il y a plusieurs serveurs. Donc ce programme ne peut pas fonctionner pour ce que je veux faire.

En effet je veux récupérer la liste des clients du serveur, non du domaine.

Cdt