IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Process.Start d'un exe x86 depuis application x64


Sujet :

C#

  1. #1
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut Process.Start d'un exe x86 depuis application x64
    Bonjour,

    J'ai une application 64 bits (TargetPlatform=x64) qui doit exécuter un exe externe durant son fonctionnement. Cet exe est compilé en 32 bits (x86). Voici la manière dont j'exécute cet exe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            //Préparation du process
            l_process.StartInfo.FileName = _sFullFilePath;
            l_process.StartInfo.Verb = "Open";
            l_process.StartInfo.CreateNoWindow = true;
            l_process.StartInfo.Arguments = l_sParams;
     
            //Démarrage du process
            l_process.Start();
    L'erreur suivante apparaît :
    The specified executable is not valid for this OS platform
    Est-il possible de spécifier la plateforme du processus externe ? Comment faire dans mon cas ? Ca m'embête de passer tout mon application en 32 bits pour ce processus externe.

    Merci d'avance de votre aide !

  2. #2
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 170
    Points : 7 422
    Points
    7 422
    Billets dans le blog
    1
    Par défaut
    A la main, le programme x86 démarre ?

    Je trouve ça bizarre que tu ne puisses pas lancer un programme 32 bits depuis un programme 64 bits...

  3. #3
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Bizarre; essaye de mettre la propriété UseShellExecute à true.

  4. #4
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    Oui le programme démarre à la main, et mettant UseShellExecute à true, rien ne change...

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Sous quel OS es tu ?

    Es tu absolument sur que ton appli que tu lances est bien du 32 bits et pas du 16 bits ?

  6. #6
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    Windows server 2008 R2 x64

  7. #7
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    D'où sort le programme que tu lances ? écrit avec quelle techno ?

  8. #8
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    C'est un logiciel d'un fournisseur externe dont je dois taire le nom. Je ne sais pas quelle technologie de dev. Par contre il m'y assuré que le 64 bits n'était pas supporté par leur application...

  9. #9
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Quand tu le lance "à la main" est ce directement en lançant l'exe,ou passes tu par un .bat ou autre chose ?

    Par ailleurs, ton programme lanceur,c'est quoi ? une application frontale, un service, etc .. ?

  10. #10
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    C'était une erreur de ma part. Dans mon code, je remplaçais mon fichier exe par un txt à graver... Copier-coller trop rapide... Tout fonctionne correctement avec le code de mon premier POST.

    Merci de votre aide !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 02/10/2013, 12h19
  2. Lancer .EXE depuis application Silverlight OOB
    Par Invité dans le forum Silverlight
    Réponses: 1
    Dernier message: 15/10/2010, 11h11
  3. process.start et .exe cmd
    Par GrosF***.fr dans le forum C#
    Réponses: 0
    Dernier message: 08/07/2010, 20h15
  4. Réponses: 4
    Dernier message: 02/04/2008, 15h19
  5. Problème de Process.Start depuis une page ASPX
    Par LudVichzme dans le forum ASP.NET
    Réponses: 3
    Dernier message: 30/04/2007, 20h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo