Différence entre process.start et wshell.run()

Résolu
cs_DeWaRs Messages postés 77 Date d'inscription vendredi 31 décembre 2004 Statut Membre Dernière intervention 6 septembre 2010 - 29 juil. 2009 à 15:50
cs_DeWaRs Messages postés 77 Date d'inscription vendredi 31 décembre 2004 Statut Membre Dernière intervention 6 septembre 2010 - 30 juil. 2009 à 09:42
Bonjour a tous.

On m'a conseiller sur ce forum d'utiliser process.start plutot que wshell.run(), mais pour qu'elle raison.

Une petite question, avec wshell.run() quand j'execute un fichier VBS, il n'y a pas de fenetre dos qui s'affiche. Est-il possible de faire la meme chose avec process.start ???


Merci d'avance de vos réponse.

Cordialement.

DeWaRs
A voir également:

6 réponses

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
29 juil. 2009 à 21:01
Oui, il te suffit d'exécuter cmd.exe /C "chemin vers le programme en laissant les doubles-guillemets"

---
VB.NET is good ... VB6 is better
3
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
29 juil. 2009 à 22:24
Salut,

Petites explications plus détaillés :

L'objet WshShell est obtenu en créant une instance de l'objet COM identifié par le progID «WScript.WshShell« :

Set WshShell = CreateObject("WScript.WshShell")

Tu crée donc une instance vers un composant COM, si celui-ci n'existe pas, ou n'est pas inscrit dans le registre sur la plateforme ou tu exécute ton programme, celui-ci ne fonctionnera pas correctement.

Process est une classe du framework, et donc natif au codes .Net, ce qui évite les dépendances vers des fichiers.

De plus la classe Process, t'offre pas mal de fonctionnalités pour récupérer des infos sur le process lancé et manipuler celui-ci (Voir F2 dans Visual Studio, Taper Process pour avoir la liste des méthodes de la classe).

Il faut un maximum éviter de faire appel à des object COM dans la mesure du possible.


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
3
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
29 juil. 2009 à 23:30
Bien entendu, je précisais juste que si le composant est absent du système => Plantage (Valable pour tout ActiveX)

Bien sûr l'install de WScript est téléchargeable depuis le site de Microsoft (pour les anciennes versions de Windows)

Cordialement, Mayzz.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
29 juil. 2009 à 17:51
oui, en .net, on utilise le Framework...

Renfield - Admin CodeS-SourceS - MVP Visual Basic
0

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

Posez votre question
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
29 juil. 2009 à 23:05
@Mayzz : Wscript.Shell est présent sous tous les OS Windows civilisés (à partir de Windows 2000). Donc pas de problème pour ça. Mais je suis d'accord avec toi quand tu dis qu'il ne faut pas utiliser COM en .NET : le framework a déjà des fonctions faites pour.

---
VB.NET is good ... VB6 is better
0
cs_DeWaRs Messages postés 77 Date d'inscription vendredi 31 décembre 2004 Statut Membre Dernière intervention 6 septembre 2010 2
30 juil. 2009 à 09:42
Merci de vos précisions :)
0
Rejoignez-nous