PHP problème avec exec et system

Bonjour,
j'ai un souci avec php pour lancer un exécutable.
Si le chemin contient un espace, php ne me lance pas l'appli. J'ai essayé exec() et system() sans succès.
Ex : exec("C:\Program Files\VLC\vlc.exe");
J'ai essayé avec des %20 à la place des espaces des guillemets (') au lieu de ("), rien ne fonctionne.

Est-ce quelqu'un à déjà eu le problème ?

Eric
Configuration: Windows XP
Firefox 3.0.3

5 réponses

  1. Il faut écrire le code suivant :

    exec('"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"');
    2
    1. Contributeur
      Bonsoir,
      Essaie de mettre des slashs à la place des antislashs, qui servent à échapper les caractères. Je ne pense pas que l'espace posera problème.

      Cordialement,
      0
      1. Merci pour ta réponse,

        mais j'ai toujours le même problème.

        Petite info : je test ma page sur Easyphp 1.8.0.1
        0
        1. encore une info :
          le code retour est a 1 quand il y a un espace dans le chemin sinon il est a 0.
          0
          1. Contributeur
            Bonsoir,
            Essaie maintenant en échappant l'espace (en principe l'espace correspond à la séparation des paramètres donc il ne comprend pas que c'est une chaîne unique) :
            exec("C:/Program\ Files/VLC/vlc.exe");

            Enfin, executes-tu ce script sur un serveur en local ou sur un serveur distant ?

            Cordialement,
            0
        2. J'ai toujours le même problème en échappant l'espace. J'avais aussi essayé en remplaçant l'espace pas %20.
          Je teste en local sur ma machine, mais le but est de le faire fonctionner en distant avec VLC en local.
          0