Programme present sur le serveur doit agir sur les clients

Résolu
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010 - 26 janv. 2010 à 08:52
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010 - 27 janv. 2010 à 14:47
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

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 janv. 2010 à 09:02
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
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 janv. 2010 à 16:08
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
3
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010
26 janv. 2010 à 09:03
Ok je vais voir ça merci de ta réponse rapide
0
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010
26 janv. 2010 à 12:00
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.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 janv. 2010 à 12:36
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
0
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010
26 janv. 2010 à 14:15
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.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 janv. 2010 à 14:22
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
0
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010
26 janv. 2010 à 15:48
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.
0
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010
26 janv. 2010 à 16:15
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.
0
cs_Izachi Messages postés 10 Date d'inscription lundi 4 janvier 2010 Statut Membre Dernière intervention 5 mai 2010
27 janv. 2010 à 14:47
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
0
Rejoignez-nous