En fait, le doublement n'est pas géré comme on pourrait le penser, c'est plus simple et je ne sais pas comment il le gère pour comprendre que le premier " n'est pas la fin du paramètre, peut-être que " non suivi d'un espace est pris comme de la donnée.
Pour ce genre de chose faut commencer par un mode visible :
ShellExecute(0, nil, 'cmd.exe', '/K "SUBST T: "C:\Program Files (x86)\Embarcadero\Studio""', nil, SW_SHOW);
et la version silencieuse
ShellExecute(0, nil, 'cmd.exe', '/C "SUBST T: "C:\Program Files (x86)\Embarcadero\Studio""', nil, SW_HIDE);
Envoyé par
Paul TOTH
en fait SUBST n'est pas une commande du shell mais un programme dans C:\Windows\System32\Subst.exe...je pense qu'il serait plus simple de l'invoquer directement
C'est la proposition de SergioMaster, l'appel direct
Disons que la résistance sur CMD /C était une curiosité
Partager