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 :

Probleme invoke process


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de Blo0d4x3
    Inscrit en
    Octobre 2003
    Messages
    593
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 593
    Par défaut Probleme invoke process
    Salut, je cherche à lancer un binaire dotnet lui aussi, mais j'ai une erreur parameter count mismatch

    Rien de foufou, j'ai juste ce ptit bout de code la:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                    Assembly assembly = Assembly.LoadFile("C:\\Users\\user\\Desktop\\test.exe");
                    assembly.EntryPoint.Invoke(null, null);
    Google me dit que ca viendrait d'un problème de paramètres, test.exe n'en prends pourtant aucun, j'ai tenté quand même avec assembly.EntryPoint.Invoke(null, new object[0]);, sans effet.

    Si quelqu'un à une idée...

    Merci

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Pourquoi pas un Process.Start pour démarrer un processus ?
    https://msdn.microsoft.com/fr-fr/lib...v=vs.110).aspx

  3. #3
    Membre éclairé
    Avatar de Blo0d4x3
    Inscrit en
    Octobre 2003
    Messages
    593
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 593
    Par défaut
    Parceque j'ai besoin que le process soit chargé en mémoire avant l'execution, donc je dois utiliser Assembly.LoadFile et Invoke

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2013
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2013
    Messages : 51
    Par défaut
    Il y a un 3ième paramètre à assembly.EntryPoint.Invoke (BindingFlags). Peut-être que la méthode d'entrée n'est pas publique.

    Peux-tu nous donner le message d'erreur que tu obtiens ?

  5. #5
    Membre éclairé
    Avatar de Blo0d4x3
    Inscrit en
    Octobre 2003
    Messages
    593
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 593
    Par défaut
    J'ai le message d'erreur; "parameter count mismatch"

    Ce qui est bizarre aussi, c'est qu'avec certains binaires ca foncionne, mais avec celui ci non.

    Edit:

    J'ai remplacé le main de test.exe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    public static void Main(string[] args)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    static void Main()
    Ca fonctionne.

  6. #6
    Membre Expert
    Homme Profil pro
    edi
    Inscrit en
    Juin 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : Juin 2007
    Messages : 941
    Par défaut
    Ton main attend un string[] et tu ne lui en fournis pas (assembly.EntryPoint.Invoke(null, null);). Essaie assembly.EntryPoint.Invoke(null, new object[] { null }); ou assembly.EntryPoint.Invoke(null, new object[] { new string[0] });. Voir MethodInfo.Invoke(object, object[]).

Discussions similaires

  1. [2008] Probleme de processing incremental
    Par mikedavem dans le forum SSAS
    Réponses: 1
    Dernier message: 23/05/2011, 10h32
  2. [C#] Probleme de Process
    Par Lazagne dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 16/05/2011, 10h04
  3. Probleme mod_jk : process tomcat5.exe qui s'enflamme
    Par progamer54 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 27/01/2009, 10h41
  4. Probleme avec Process.Start
    Par lucyole dans le forum VB.NET
    Réponses: 4
    Dernier message: 03/01/2008, 18h42
  5. probleme avec Process et Runtime
    Par vince3320 dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 16/01/2007, 18h57

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