Lancé script VBS dans VB.net

Résolu
Portos67 Messages postés 72 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 14 janvier 2013 - 8 oct. 2008 à 09:49
Portos67 Messages postés 72 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 14 janvier 2013 - 8 oct. 2008 à 21:42
Bonjour,
en faite voila j'aimerais lancer un script.vbs dans mon programme en VB.net, mais pour éviter d'aller chercher le script je ne sais ou je veux l'intégrer dans les ressources du programme.
Pour l'intégrer pas de soucis, maintenant le hic c'est pour lancer le script, j'ai essayé avec shell mais apparemment ca veut pas, pourtant un simple double clic sur windows lance mon script sans problème !

Et puis j'avais une autre question aussi, comment faire pour copier mon application en cours d'exécution, sur un poste, je m'explique. Je lance mon programme à partir d'une clé usb, et je voudrais qu'au lancement, le programme ce copie sur le disque dur du poste. Seul hic c'est que pour la copie il faut que je définisse la source comme étant le programme en lui même et un chemin....

Merci d'avance, et bravo au forum

8 réponses

gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
8 oct. 2008 à 10:27
' met ton vbs en ressource

Dim apath
As
String = Application.StartupPathIO.File.WriteAllBytes(apath &

"\dtswizard.vbs",
My.Resources.DTSWizard)Process.Start(apath &

"\dtswizard.vbs")

'copie ton exe dans "userName/mesdocuments"
Dim apath
As
String = IO.Path.Combine(Application.StartupPath,
My.Application.Info.AssemblyName &
".exe")

Dim winpath
As
String = IO.Path.Combine(
My.Computer.FileSystem.SpecialDirectories.MyDocuments,
My.Application.Info.AssemblyName &
".exe")IO.File.Copy(apath, winpath,

True)

Bonjour chez vous !
3
Portos67 Messages postés 72 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 14 janvier 2013 1
8 oct. 2008 à 17:01
Franchement je te remercie, ça fait 1 semaine que je cherche dans tout les coins comment faire, ça fait 2 semaines que je me suis mis au vb.net, et c'était pas facile au début. J'ai tester la copie de l'exe ca marche impec, j'ai paramétrer sur le bureau par contre, ensuite pour le lancement du vbs il me marque une erreur au niveau du "IO.File.WriteAllByte", il me dit qu'un valeur de type string ne peut pas être convertir en tableau à 1 dimension de Byte, je vais tester avec un IO.File.WriteAllText.

Merci beaucoup en tout cas
0
Portos67 Messages postés 72 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 14 janvier 2013 1
8 oct. 2008 à 17:11
Je viens de tester et ça marche IO.File.WriteAllText
Par contre mon fichier vbs génère un fichier txt, et il me le génère dans le fichier bin/debug, je vais m'arranger pour faire afficher ce fichier, et le supprimer ensuite
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
8 oct. 2008 à 17:27
My

.Computer.FileSystem.WriteAllText(


"echo.vbs"

, xx,


False

, System.Text.Encoding.Default)













Bonjour chez vous !
0

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

Posez votre question
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
8 oct. 2008 à 17:32
My




.Computer.FileSystem.WriteAllText(


"echo.vbs"

, xx,


False

, System.Text.Encoding.Default)



Dim

pp


As





New

Processpp.StartInfo.Verb =



"Open"


pp.StartInfo.FileName = Application.StartupPath &





"\echo.vbs"


pp.Start()
















Bonjour chez vous !
0
Portos67 Messages postés 72 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 14 janvier 2013 1
8 oct. 2008 à 20:28
par contre j'ai pas compris le dernier script que tu ma envoyé
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
8 oct. 2008 à 21:40
 
My.Computer.FileSystem.WriteAllText( "echo.vbs"
, xx, False, System.Text.Encoding.Default)  ' faut écrire le fichier en format text/ANSI ( Windows )
sinon erreur de lancement du script







Dim

pp AsNewProcess

pp.StartInfo.Verb =





"Open"   ' c'est le verbe pour lancer le script



pp.StartInfo.FileName = Application.StartupPath &





"\echo.vbs"   ' c'est le nom du script



pp.Start()  'on démarre le script









Bonjour chez vous !
0
Portos67 Messages postés 72 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 14 janvier 2013 1
8 oct. 2008 à 21:42
Ok merci mais en faite j'ai pris ton tout premier script qui marche tres bien !!   ;-)
0
Rejoignez-nous