Vérifier si une commande fourni une réponse ou pas

pOusSinUs Messages postés 38 Date d'inscription vendredi 29 juin 2007 Statut Membre Dernière intervention 2 août 2007 - 2 août 2007 à 15:21
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 2 août 2007 à 16:24
Bon voilà mon petit souci, j'ai une commande :
dsquery computer domainroot -o dn -name toto -d masociete.com -u admin -p password

Elle vérifie si un compte d'ordinateur est présent dans Active Directory. Je veux donc savoir si la commande revoie une réponse ou pas.

J'ai fait le code suivant :

If 
CBool(Shell(
"dsquery computer domainroot -o dn -name toto -d nantes.ares.ssii -u admininstall -p InstallAdmin44"))
ThenMsgBox(

"pc present")

ElseMsgBox(

"pc pas present")

End
If

Mais cela me renvoi toujours que le pc est présent car la commande fonctionne toujours sauf qu'elle donne un résultat quand le compte existe et n'en donne pas quand le compte n'existe pas.

5 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
2 août 2007 à 15:46
Shell renverra pas le code retour de l'appli ...
elle renverra son PID
0
pOusSinUs Messages postés 38 Date d'inscription vendredi 29 juin 2007 Statut Membre Dernière intervention 2 août 2007
2 août 2007 à 15:55
ba oui la je suis d'accord avec toi, aurais-tu une solution pour retourner la valeur?
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
2 août 2007 à 16:21
je ne connais pas VB.Net, je ne peux pas t'aider

je ne fais que du VB6 (enfin, et d'autres choses)
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
2 août 2007 à 16:23
m'enfin, la doc est accessible sur le Net, au pire...
plus ton role que le mien de la lire, mais bon ^^

http://msdn2.microsoft.com/en-us/library/system.diagnostics.process_members(vs.80).aspx

royeal !

je vois
ExitCode => Gets the value that the associated process specified when it terminated.
HasExited => Gets a value indicating whether the associated process has been terminated.

comme ca, tu fais Process.Start ( .... )
tu boucle dans qu'il n'a pas terminé (HasExited)

enfin, tu lis ton code retour (par ExitCode)
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
2 août 2007 à 16:24
0
Rejoignez-nous