Question
problème de fonction
- michault
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 128
- Remerciements reçus 0
il y a 17 ans 4 mois #3130
par michault
problème de fonction a été créé par michault
Bonjour à tous,
Une petite colle:
Je lance dans un 1° temps le script ci-dessous à l'aide de la ligne de commande suivante:
[PS] C:\PWRSHELL>C:\PWRSHELL\ShutDownParam.ps1 -computer('10.200.202.147') -option(5)
Aucun problème
ShutDownParam.ps1
Param($computer,$option)
$pc = get-wmiobject -class \"Win32_operatingsystem\" -ComputerName $computer
$pc.win32Shutdown([int32]$option)
j'ai transformé ce script en fonction que le lance comme suit:
shutdown('10.200.202.147',5)
et là:
Get-WmiObject : Le serveur RPC n'est pas disponible. (Exception from HRESULT: 0x800706BA)
Au niveau de C:\Program Files\Quest Software\Management Shell for AD\qsft.ps1 : 68 Caractère : 20
+ $pc = get-wmiobject <<<< -class \"Win32_operatingsystem\" `
Exception lors de l'appel de « Win32Shutdown » : « Échec générique »
Au niveau de C:\Program Files\Quest Software\Management Shell for AD\qsft.ps1 : 70 Caractère : 18
+ $pc.win32Shutdown( <<<< [int32]$option)
ma fonction:
Function ShutDown {
# Paramètres: $computer :PC à éteindre (adresse IP)
# Paramètres: $option :Option choisie (Extinction forcée, Reboot,.... )
# 0 - Log Off
# 1 - Shutdown
# 2 - Reboot
# 4 - Forced Log Off
# 5 - Forced Shutdown
# 6 - Forced Reboot
# 8 - Power Off
# 12 - Forced Power Off
Param($computer, $option)
$pc = get-wmiobject -class \"Win32_operatingsystem\" `
-ComputerName $computer
$pc.win32Shutdown([int32]$option)
}
Conclusion: je ne sais pas passer les paramètres:blush:
Quelqu'un peut-il m'aider?
Une petite colle:
Je lance dans un 1° temps le script ci-dessous à l'aide de la ligne de commande suivante:
[PS] C:\PWRSHELL>C:\PWRSHELL\ShutDownParam.ps1 -computer('10.200.202.147') -option(5)
Aucun problème
ShutDownParam.ps1
Param($computer,$option)
$pc = get-wmiobject -class \"Win32_operatingsystem\" -ComputerName $computer
$pc.win32Shutdown([int32]$option)
j'ai transformé ce script en fonction que le lance comme suit:
shutdown('10.200.202.147',5)
et là:
Get-WmiObject : Le serveur RPC n'est pas disponible. (Exception from HRESULT: 0x800706BA)
Au niveau de C:\Program Files\Quest Software\Management Shell for AD\qsft.ps1 : 68 Caractère : 20
+ $pc = get-wmiobject <<<< -class \"Win32_operatingsystem\" `
Exception lors de l'appel de « Win32Shutdown » : « Échec générique »
Au niveau de C:\Program Files\Quest Software\Management Shell for AD\qsft.ps1 : 70 Caractère : 18
+ $pc.win32Shutdown( <<<< [int32]$option)
ma fonction:
Function ShutDown {
# Paramètres: $computer :PC à éteindre (adresse IP)
# Paramètres: $option :Option choisie (Extinction forcée, Reboot,.... )
# 0 - Log Off
# 1 - Shutdown
# 2 - Reboot
# 4 - Forced Log Off
# 5 - Forced Shutdown
# 6 - Forced Reboot
# 8 - Power Off
# 12 - Forced Power Off
Param($computer, $option)
$pc = get-wmiobject -class \"Win32_operatingsystem\" `
-ComputerName $computer
$pc.win32Shutdown([int32]$option)
}
Conclusion: je ne sais pas passer les paramètres:blush:
Quelqu'un peut-il m'aider?
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 4 mois #3132
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:problème de fonction
chm69 écrit:
Sous PS l'appel de fonction n'utilise pas les parenthèses :
[code:1]
#shutdown('10.200.202.147',5)
Shutdown '10.200.202.147' 5
[/code:1]
Dans le premier cas PS récupère un tableau, dans le second 2 objets, placés dans la variable local $args.
Tout compte fait cela reste cohérent avec le passage de paramètres d'un script.<br><br>Message édité par: Laurent Dardenne, à: 30/10/08 17:20
Oui c'est le piège classique cela m'arrive encore de confondre. Encore une particularité de PowerShell.Conclusion: je ne sais pas passer les paramètres
Sous PS l'appel de fonction n'utilise pas les parenthèses :
[code:1]
#shutdown('10.200.202.147',5)
Shutdown '10.200.202.147' 5
[/code:1]
Dans le premier cas PS récupère un tableau, dans le second 2 objets, placés dans la variable local $args.
Tout compte fait cela reste cohérent avec le passage de paramètres d'un script.<br><br>Message édité par: Laurent Dardenne, à: 30/10/08 17:20
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- michault
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 128
- Remerciements reçus 0
il y a 17 ans 4 mois #3135
par michault
Réponse de michault sur le sujet Re:problème de fonction
MERCI VRAIMENT C'EST SUPER:woohoo:
Connexion ou Créer un compte pour participer à la conversation.
- michault
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 128
- Remerciements reçus 0
il y a 17 ans 4 mois #3136
par michault
Réponse de michault sur le sujet Re:problème de fonction
Laurent,je vais abuser:whistle:
je voudrai maintenant, dans un même script lancer mes fonctions WakeUpPC 'xx-xx-xx-xx-xx' et derrière ShutDown '99-99-99-99' 5 mais seulement lorsque le réveil du pc est terminé.
comment puis-je faire avec un waitforexit() ou avec un start-sleep?
je voudrai maintenant, dans un même script lancer mes fonctions WakeUpPC 'xx-xx-xx-xx-xx' et derrière ShutDown '99-99-99-99' 5 mais seulement lorsque le réveil du pc est terminé.
comment puis-je faire avec un waitforexit() ou avec un start-sleep?
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 4 mois #3138
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:problème de fonction
chm69 écrit:
Difficile de proposer une solution technique ou une piste de réflexion sans savoir quelles sont les contraintes/besoins.
Est-ce que cette action concerne une machines ou n machines ? Sur quels OS ? Une machine peut ne pas redémarrer, que faire dans ce cas ? etc.
J'ai le sentiment qu'on tombe dans la gestion d'événéments asynchrone, le truc que PS v1.0 à un peu de mal à faire simplement.
Il reste le pooling, interrogation toutes les n minutes par exemple, et là coté réseau c'est pas le mieux.
Et comme par hasard je suis en train d'étudier, doucement, le sujet sous PS v1 autour de WMI et de runspace...
Déjà il te faut formuler plus précisément le besoin.comment puis-je faire
Difficile de proposer une solution technique ou une piste de réflexion sans savoir quelles sont les contraintes/besoins.
Est-ce que cette action concerne une machines ou n machines ? Sur quels OS ? Une machine peut ne pas redémarrer, que faire dans ce cas ? etc.
J'ai le sentiment qu'on tombe dans la gestion d'événéments asynchrone, le truc que PS v1.0 à un peu de mal à faire simplement.
Il reste le pooling, interrogation toutes les n minutes par exemple, et là coté réseau c'est pas le mieux.
Et comme par hasard je suis en train d'étudier, doucement, le sujet sous PS v1 autour de WMI et de runspace...
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- michault
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 128
- Remerciements reçus 0
il y a 17 ans 4 mois #3139
par michault
Réponse de michault sur le sujet Re:problème de fonction
LE BUT ULTIME?
un csv avec x PC sous xp
A partir d'un serveur windows server 2003, je les réveille, lance une tache planifiée(defrag problème sur un autre post concernant schtasks), puis shutdown.
si ok pour un pc pas de pb pour plusieurs.
aujourd'hui je récupère en cas de machine inaccéssible le message : le serveur RPC non dispo.....dans un fichier log.txt
voilà pour tes intérrogations
merci en tous cas de ton aide
un csv avec x PC sous xp
A partir d'un serveur windows server 2003, je les réveille, lance une tache planifiée(defrag problème sur un autre post concernant schtasks), puis shutdown.
si ok pour un pc pas de pb pour plusieurs.
aujourd'hui je récupère en cas de machine inaccéssible le message : le serveur RPC non dispo.....dans un fichier log.txt
voilà pour tes intérrogations
merci en tous cas de ton aide
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.106 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- problème de fonction