Commande cmd qui ne fonctionne pas [Résolu]

bundy_al01 2 Messages postés lundi 23 mai 2016Date d'inscription 23 mai 2016 Dernière intervention - 23 mai 2016 à 21:04 - Dernière réponse :  bundy_al01
- 24 mai 2016 à 21:24
Bonjour,

je souhaite lancer un programme que j'ai codé en c# via un cmd.
La commande cmd est lancée via une macro vba.

j'ai le problème suivant avec les lignes de code suivantes :

Set wsh = VBA.CreateObject("WScript.Shell")

wsh.Run "C:\Windows\System32\cmd.exe /K C:\Users\Public\Documents\'Visual Studio 2010'\Projects\DrafterZMQBLOOM\DrafterZMQ\Drafter\bin\Debug\RTGenBloom.exe AUTOMATIC", 1, False


=> dans le cmd, il y a le message d'erreur suivant :


'C:\Users\Public\Documents\'Visual' is not recognised as an intern operable program or batch file


J'ai l'impression que le cmd n'aime pas les espaces.


Quelqu'un aurait il une solution svp ?


Cordialement.
Afficher la suite 

7 réponses

jordane45 19324 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 décembre 2017 Dernière intervention - 23 mai 2016 à 21:10
0
Utile
4
Bonjour,

Commence par retirer les quotes que tu as mis autour de 'visual studio'
bundy_al01 2 Messages postés lundi 23 mai 2016Date d'inscription 23 mai 2016 Dernière intervention - 23 mai 2016 à 21:19
Bonsoir,

je viens de les retirer et j'ai toujours un message d'erreur :

'C:\Users\Public\Documents\Visual' is not recognised as an intern operable program or batch file

Cordialement.
jordane45 19324 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 décembre 2017 Dernière intervention > bundy_al01 2 Messages postés lundi 23 mai 2016Date d'inscription 23 mai 2016 Dernière intervention - 23 mai 2016 à 22:54
Tu peux montrer ton code corrigé ?
(En utilisant les balises de code ! )

Autre question.. as tu testé cette ligne de commande directement sous DOS pour voir si elle fonctionne ?
bundy_al01 > jordane45 19324 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 décembre 2017 Dernière intervention - 24 mai 2016 à 12:35
Bonjour,

le voici :

Set wsh = VBA.CreateObject("WScript.Shell")

 wsh.Run "C:\Windows\System32\cmd.exe /K C:\Users\omeskine\Documents\Visual Studio 2010\Projects\DrafterZMQBLOOM\DrafterZMQ\Drafter\bin\Debug\RTGenBloom.exe AUTOMATIC", 1, False


ce qui est en fait équivalent à :

Shell "C:\Windows\System32\cmd.exe /K C:\Users\omeskine\Documents\Visual Studio 2010\Projects\DrafterZMQBLOOM\DrafterZMQ\Drafter\bin\Debug\RTGenBloom.exe AUTOMATIC"


Les 2 versions me donnent la même erreur.

J'ai lancé la commande directement dans un cmd et c'est toujours la même chose.

Cordialement.
jordane45 19324 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 18 décembre 2017 Dernière intervention > bundy_al01 - 24 mai 2016 à 15:52
J'ai lancé la commande directement dans un cmd et c'est toujours la même chose.

Si c'est la même chose en la lançant directement dans un CMD .. c'est que le souci ne vient pas du code VBA que tu as écris ..... mais bien de celle ligne de code elle même....
cs_Le Pivert 4782 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 18 décembre 2017 Dernière intervention - 24 mai 2016 à 14:27
0
Utile
1
Bonjour,

j'ai été confronté a ce problème il y a quelque temps. Voici le lien pour y faire face:

http://www.office-loesung.de/ftopic619862_0_0_asc.php

Option Explicit
'http://www.office-loesung.de/ftopic619862_0_0_asc.php
Private Declare Function Wow64DisableWow64FsRedirection Lib "kernel32.dll" ( _
    ByRef oldvalue As Long) As Boolean
Private Declare Function Wow64RevertWow64FsRedirection Lib "kernel32.dll" ( _
    ByVal oldvalue As Long) As Boolean
Public Sub prcStartMSConfig64()
 Const MS_CONFIG As String = "C:\Windows\system32\msconfig.exe"
 Const WND_SHOWNORMAL As Variant = 1
 Dim lngWow64RedirectReturn As Long
 Dim objShell As Object
  
 Set objShell = CreateObject("Shell.Application")
 lngWow64RedirectReturn = 0
 Wow64DisableWow64FsRedirection lngWow64RedirectReturn

 objShell.ShellExecute MS_CONFIG, vbNullString, vbNullString, "open", WND_SHOWNORMAL
  
 Wow64RevertWow64FsRedirection lngWow64RedirectReturn
 Set objShell = Nothing
End Sub
'ouvre le programme de capture
Private Sub CommandButton1_Click()
 Shell "C:\Windows\SysNative\SnippingTool.exe", vbNormalFocus 'adapter le chemin de l'exe
End Sub

Bonsoir,

votre solution marche parfaitement.
Merci à tous pour votre aide.

Cordialement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.