Le serveur distant n'existe pas ou n'est pas disponible
5 réponses
david
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas
disponible.." lorsque je passe une deuxième fois dans la boucle for.
Pourtant à la fin de la boucle je mets set objwmiservice = nothing.
Voici le code :
-----------------------------------------------------------
For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jérôme Cornier [MS]
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Avez-vous un "ON ERROR RESUME NEXT" dans la procédure (ou fonction) qui contient ce morceau de code ? Si oui mettez la ligne en commentaire pour vérifier les erreurs éventuelles du script.
D'autre part êtes-vous sûr que le second objet trouvé dans le container est bien un ordinateur accessible ? (à contrôler avec ADSIEdit par exemple).
-- Cordialement, _________________________________________________________ Jérôme Cornier Microsoft Services France
"david" a écrit dans le message de news:
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas disponible.." lorsque je passe une deuxième fois dans la boucle for. Pourtant à la fin de la boucle je mets set objwmiservice = nothing. Voici le code :
----------------------------------------------------------- For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:" & strComputer & "rootcimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
Set objWMIService = nothing Set colItems = nothing
Next ------------------------------------------------------------
Avez vous une idée.
Merci
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4)
Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Avez-vous un "ON ERROR RESUME NEXT" dans la procédure (ou fonction) qui
contient ce morceau de code ? Si oui mettez la ligne en commentaire pour
vérifier les erreurs éventuelles du script.
D'autre part êtes-vous sûr que le second objet trouvé dans le container est
bien un ordinateur accessible ? (à contrôler avec ADSIEdit par exemple).
--
Cordialement,
_________________________________________________________
Jérôme Cornier
Microsoft Services France
"david" <david@discussions.microsoft.com> a écrit dans le message de news:
D9363EEA-2F02-4B1D-BEA0-C14AC2F25227@microsoft.com...
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas
disponible.." lorsque je passe une deuxième fois dans la boucle for.
Pourtant à la fin de la boucle je mets set objwmiservice = nothing.
Voici le code :
-----------------------------------------------------------
For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:\" & strComputer & "rootcimv2")
Set colItems = objWMIService.ExecQuery("Select * from
Win32_ComputerSystem")
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Avez-vous un "ON ERROR RESUME NEXT" dans la procédure (ou fonction) qui contient ce morceau de code ? Si oui mettez la ligne en commentaire pour vérifier les erreurs éventuelles du script.
D'autre part êtes-vous sûr que le second objet trouvé dans le container est bien un ordinateur accessible ? (à contrôler avec ADSIEdit par exemple).
-- Cordialement, _________________________________________________________ Jérôme Cornier Microsoft Services France
"david" a écrit dans le message de news:
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas disponible.." lorsque je passe une deuxième fois dans la boucle for. Pourtant à la fin de la boucle je mets set objwmiservice = nothing. Voici le code :
----------------------------------------------------------- For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:" & strComputer & "rootcimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
Set objWMIService = nothing Set colItems = nothing
Next ------------------------------------------------------------
Avez vous une idée.
Merci
david
Bonjour et merci,
1.Ma syntaxe mid fonctionne, je l'ai testé en faisant un wscript.echo strcomputer et le nom de l'ordinateur ressort correctement.
2.Le second objet est bien accessible.
3. Sans rien toucher à mon script cela marche maintenant après redémarrage du PC. l'objet setobjwmi ne devait pas être correctement réinitialiser.
4. Maintenant je cherche un moyen de savoir si l'ordi est allumé avant d'initialiser le setobjwmi.... Avec le pingstatus peut être ????
"Jérôme Cornier [MS]" wrote:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Avez-vous un "ON ERROR RESUME NEXT" dans la procédure (ou fonction) qui contient ce morceau de code ? Si oui mettez la ligne en commentaire pour vérifier les erreurs éventuelles du script.
D'autre part êtes-vous sûr que le second objet trouvé dans le container est bien un ordinateur accessible ? (à contrôler avec ADSIEdit par exemple).
-- Cordialement, _________________________________________________________ Jérôme Cornier Microsoft Services France
"david" a écrit dans le message de news:
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas disponible.." lorsque je passe une deuxième fois dans la boucle for. Pourtant à la fin de la boucle je mets set objwmiservice = nothing. Voici le code :
----------------------------------------------------------- For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:" & strComputer & "rootcimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
Set objWMIService = nothing Set colItems = nothing
Next ------------------------------------------------------------
Avez vous une idée.
Merci
Bonjour et merci,
1.Ma syntaxe mid fonctionne, je l'ai testé en faisant un wscript.echo
strcomputer et le nom de l'ordinateur ressort correctement.
2.Le second objet est bien accessible.
3. Sans rien toucher à mon script cela marche maintenant après redémarrage
du PC. l'objet setobjwmi ne devait pas être correctement réinitialiser.
4. Maintenant je cherche un moyen de savoir si l'ordi est allumé avant
d'initialiser le setobjwmi....
Avec le pingstatus peut être ????
"Jérôme Cornier [MS]" wrote:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4)
Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Avez-vous un "ON ERROR RESUME NEXT" dans la procédure (ou fonction) qui
contient ce morceau de code ? Si oui mettez la ligne en commentaire pour
vérifier les erreurs éventuelles du script.
D'autre part êtes-vous sûr que le second objet trouvé dans le container est
bien un ordinateur accessible ? (à contrôler avec ADSIEdit par exemple).
--
Cordialement,
_________________________________________________________
Jérôme Cornier
Microsoft Services France
"david" <david@discussions.microsoft.com> a écrit dans le message de news:
D9363EEA-2F02-4B1D-BEA0-C14AC2F25227@microsoft.com...
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas
disponible.." lorsque je passe une deuxième fois dans la boucle for.
Pourtant à la fin de la boucle je mets set objwmiservice = nothing.
Voici le code :
-----------------------------------------------------------
For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:\" & strComputer & "rootcimv2")
Set colItems = objWMIService.ExecQuery("Select * from
Win32_ComputerSystem")
1.Ma syntaxe mid fonctionne, je l'ai testé en faisant un wscript.echo strcomputer et le nom de l'ordinateur ressort correctement.
2.Le second objet est bien accessible.
3. Sans rien toucher à mon script cela marche maintenant après redémarrage du PC. l'objet setobjwmi ne devait pas être correctement réinitialiser.
4. Maintenant je cherche un moyen de savoir si l'ordi est allumé avant d'initialiser le setobjwmi.... Avec le pingstatus peut être ????
"Jérôme Cornier [MS]" wrote:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Avez-vous un "ON ERROR RESUME NEXT" dans la procédure (ou fonction) qui contient ce morceau de code ? Si oui mettez la ligne en commentaire pour vérifier les erreurs éventuelles du script.
D'autre part êtes-vous sûr que le second objet trouvé dans le container est bien un ordinateur accessible ? (à contrôler avec ADSIEdit par exemple).
-- Cordialement, _________________________________________________________ Jérôme Cornier Microsoft Services France
"david" a écrit dans le message de news:
Bonjour à tous,
j'ai le message suivant "le serveur distant n'existe pas ou n'est pas disponible.." lorsque je passe une deuxième fois dans la boucle for. Pourtant à la fin de la boucle je mets set objwmiservice = nothing. Voici le code :
----------------------------------------------------------- For Each Computer in Container
strComputer = mid(Computer.name,4)
Set objWMIService = GetObject("winmgmts:" & strComputer & "rootcimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
Set objWMIService = nothing Set colItems = nothing
Next ------------------------------------------------------------
Avez vous une idée.
Merci
Jacques Barathon [MS]
"Jérôme Cornier [MS]" wrote in message news:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Jérôme,
Quand tu ne lui passes que deux paramètres, la fonction mid () retourne la chaîne passée en 1er paramètre à partir du Xe caractère, X étant le 2nd paramètre. Par exemple:
mid ("1234567890", 4)
-> 4567890
Jacques
"Jérôme Cornier [MS]" <jcornier@online.microsoft.com> wrote in message
news:ul0miUUGFHA.3504@TK2MSFTNGP12.phx.gbl...
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4)
Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Jérôme,
Quand tu ne lui passes que deux paramètres, la fonction mid () retourne la
chaîne passée en 1er paramètre à partir du Xe caractère, X étant le 2nd
paramètre. Par exemple:
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Jérôme,
Quand tu ne lui passes que deux paramètres, la fonction mid () retourne la chaîne passée en 1er paramètre à partir du Xe caractère, X étant le 2nd paramètre. Par exemple:
mid ("1234567890", 4)
-> 4567890
Jacques
Jean-Claude BELLAMY
Dans le message news: , Jérôme Cornier [MS] s'est ainsi exprimé:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Le 3ème paramètre est facultatif ! Si on ne le précise pas, la fonction retourne TOUS les caractères à partir du caractère de départ.
mid(Computer.name,4) donne le même résultat que mid(Computer.name,4,len(Computer.name)-3)
Par contre ce que je pige pas ici, c'est ce départ au 4ème caractère.. D'où provient cet objet "computer" ? A quoi correspondent les 3 1ers caractères ?
Dans le cas d'un nom à syntaxe UNC, il commence par "" , donc c'est 2 caractères qu'il faut éliminer, et non pas 3...
Dans ce genre de circonstances, j'effectue TOUJOURS des "traces", du style :
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Dans le message news:ul0miUUGFHA.3504@TK2MSFTNGP12.phx.gbl ,
Jérôme Cornier [MS] <jcornier@online.microsoft.com> s'est ainsi exprimé:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4)
Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Le 3ème paramètre est facultatif !
Si on ne le précise pas, la fonction retourne TOUS les caractères à partir
du caractère de départ.
mid(Computer.name,4)
donne le même résultat que
mid(Computer.name,4,len(Computer.name)-3)
Par contre ce que je pige pas ici, c'est ce départ au 4ème caractère..
D'où provient cet objet "computer" ?
A quoi correspondent les 3 1ers caractères ?
Dans le cas d'un nom à syntaxe UNC, il commence par "\" , donc c'est 2
caractères qu'il faut éliminer, et non pas 3...
Dans ce genre de circonstances, j'effectue TOUJOURS des "traces", du style :
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
Jean-Claude.Bellamy@wanadoo.fr * JC.Bellamy@free.fr
Dans le message news: , Jérôme Cornier [MS] s'est ainsi exprimé:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Le 3ème paramètre est facultatif ! Si on ne le précise pas, la fonction retourne TOUS les caractères à partir du caractère de départ.
mid(Computer.name,4) donne le même résultat que mid(Computer.name,4,len(Computer.name)-3)
Par contre ce que je pige pas ici, c'est ce départ au 4ème caractère.. D'où provient cet objet "computer" ? A quoi correspondent les 3 1ers caractères ?
Dans le cas d'un nom à syntaxe UNC, il commence par "" , donc c'est 2 caractères qu'il faut éliminer, et non pas 3...
Dans ce genre de circonstances, j'effectue TOUJOURS des "traces", du style :
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Jérôme Cornier [MS]
Bonjour,
Merci Jacques et Jean-Claude pour vos réponses. Je n'étais pas sûr pour le 3e paramètre, dans mes script j'utilise plutôt un Right pour obtenir une fin de chaîne ... par habitude ;-)
Je ne comprends pas moi non plus pourquoi supprimer les 3 premiers carctères, mais il nous manque le reste du script. David utilise peut-être des règles de dénominations qui lui sont propres ...
David : Pour le point 4, avez-vous essayé de récupérer le cide d'erreur après initialisation de l'objet ? Si l'opération a échoué il y a forcément un code différent de 0. par exemple :
If Err.Number <> 0 Then ... End If Err.Clear
Il y a aussi une chose qui n'est peut-être pas importante, mais dans le doute je la mentionne : la libération des objets est à l'envers. J'aurai d'abord réinitialisé la collection, puis ensuite l'objet WMIService ... -- Cordialement, _________________________________________________________ Jérôme Cornier Microsoft Services France
"Jean-Claude BELLAMY" a écrit dans le message de news: e%
Dans le message news: , Jérôme Cornier [MS] s'est ainsi exprimé:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Le 3ème paramètre est facultatif ! Si on ne le précise pas, la fonction retourne TOUS les caractères à partir du caractère de départ.
mid(Computer.name,4) donne le même résultat que mid(Computer.name,4,len(Computer.name)-3)
Par contre ce que je pige pas ici, c'est ce départ au 4ème caractère.. D'où provient cet objet "computer" ? A quoi correspondent les 3 1ers caractères ?
Dans le cas d'un nom à syntaxe UNC, il commence par "" , donc c'est 2 caractères qu'il faut éliminer, et non pas 3...
Dans ce genre de circonstances, j'effectue TOUJOURS des "traces", du style :
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Bonjour,
Merci Jacques et Jean-Claude pour vos réponses.
Je n'étais pas sûr pour le 3e paramètre, dans mes script j'utilise plutôt un
Right pour obtenir une fin de chaîne ... par habitude ;-)
Je ne comprends pas moi non plus pourquoi supprimer les 3 premiers
carctères, mais il nous manque le reste du script. David utilise peut-être
des règles de dénominations qui lui sont propres ...
David : Pour le point 4, avez-vous essayé de récupérer le cide d'erreur
après initialisation de l'objet ? Si l'opération a échoué il y a forcément
un code différent de 0. par exemple :
If Err.Number <> 0 Then
...
End If
Err.Clear
Il y a aussi une chose qui n'est peut-être pas importante, mais dans le
doute je la mentionne : la libération des objets est à l'envers. J'aurai
d'abord réinitialisé la collection, puis ensuite l'objet WMIService ...
--
Cordialement,
_________________________________________________________
Jérôme Cornier
Microsoft Services France
"Jean-Claude BELLAMY" <Jean-Claude.Bellamy@wanadoo.fr> a écrit dans le
message de news: e%23FiNjZGFHA.3928@TK2MSFTNGP09.phx.gbl...
Dans le message news:ul0miUUGFHA.3504@TK2MSFTNGP12.phx.gbl ,
Jérôme Cornier [MS] <jcornier@online.microsoft.com> s'est ainsi exprimé:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4)
Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Le 3ème paramètre est facultatif !
Si on ne le précise pas, la fonction retourne TOUS les caractères à partir
du caractère de départ.
mid(Computer.name,4)
donne le même résultat que
mid(Computer.name,4,len(Computer.name)-3)
Par contre ce que je pige pas ici, c'est ce départ au 4ème caractère..
D'où provient cet objet "computer" ?
A quoi correspondent les 3 1ers caractères ?
Dans le cas d'un nom à syntaxe UNC, il commence par "\" , donc c'est 2
caractères qu'il faut éliminer, et non pas 3...
Dans ce genre de circonstances, j'effectue TOUJOURS des "traces", du style
:
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
Jean-Claude.Bellamy@wanadoo.fr * JC.Bellamy@free.fr
Merci Jacques et Jean-Claude pour vos réponses. Je n'étais pas sûr pour le 3e paramètre, dans mes script j'utilise plutôt un Right pour obtenir une fin de chaîne ... par habitude ;-)
Je ne comprends pas moi non plus pourquoi supprimer les 3 premiers carctères, mais il nous manque le reste du script. David utilise peut-être des règles de dénominations qui lui sont propres ...
David : Pour le point 4, avez-vous essayé de récupérer le cide d'erreur après initialisation de l'objet ? Si l'opération a échoué il y a forcément un code différent de 0. par exemple :
If Err.Number <> 0 Then ... End If Err.Clear
Il y a aussi une chose qui n'est peut-être pas importante, mais dans le doute je la mentionne : la libération des objets est à l'envers. J'aurai d'abord réinitialisé la collection, puis ensuite l'objet WMIService ... -- Cordialement, _________________________________________________________ Jérôme Cornier Microsoft Services France
"Jean-Claude BELLAMY" a écrit dans le message de news: e%
Dans le message news: , Jérôme Cornier [MS] s'est ainsi exprimé:
Bonjour,
Déjà il y a une syntaxe bizarre : mid(Computer.name,4) Pour moi Mid possède 3 paramètres : la chaîne, le départ, la longueur.
Le 3ème paramètre est facultatif ! Si on ne le précise pas, la fonction retourne TOUS les caractères à partir du caractère de départ.
mid(Computer.name,4) donne le même résultat que mid(Computer.name,4,len(Computer.name)-3)
Par contre ce que je pige pas ici, c'est ce départ au 4ème caractère.. D'où provient cet objet "computer" ? A quoi correspondent les 3 1ers caractères ?
Dans le cas d'un nom à syntaxe UNC, il commence par "" , donc c'est 2 caractères qu'il faut éliminer, et non pas 3...
Dans ce genre de circonstances, j'effectue TOUJOURS des "traces", du style :
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *