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 :

Plantage d'un projet quand lancé directement par l'EXE


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Plantage d'un projet quand lancé directement par l'EXE
    Bonjour,

    J'ai dévellopé une petite application en C# (DotNet 2005), cette dernière utilise une DLL codée en C++ (VC++ 5.0) par mes soins (c'est à mon avis elle qui pose problème)

    Tant que je reste sur C# tout se passe bien, par contre, si je veux lancer directement l'EXE dès que je fait un appel à ma DLL je me fait jeter avec une erreur d'accès à une zone mémoire corrompu (je n'ai pas le terme exact du msg d'erreur et je m'en excuse, je pourrais le rajouter ce soir).

    Si qqun à une idée de piste, je suis preuneur.

    D'avance merci.

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Bah je dirais quand lisant la faq, sur la partie qui explique le framework, ce qu'est le .Net, tu comprendras d'où viens ton erreur.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Lecture en cours merci

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Lecture done ! Et ca m'a pas spécialement aider...

    Est ce que ca vient du fait que ma DLL est été dev dans un language non .NET ? Mais si c'est le cas pourquoi ca fonctionne bien tant que je suis dans l'environnement de devellopement ?

  5. #5
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Comment fait tu ton build ? Release ou debug ?

    Pour une utilisation en dehors de l'env de dev vaut mieux faire en release.

    Regarde aussi sur le net au niveau du build et des assemblies.
    Sous VS tu dit ou se trouve ta dll, mais c'est pas sur que l'exe seul sache où elle se trouve.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Donc le fait que ma DLL soit développée en non .NET ne devrait pas me causer de soucis ?

    Comment fait tu ton build ? Release ou debug ?
    J'l'ai testé en debug et en release et j'ai eu la meme punition.

    Regarde aussi sur le net au niveau du build et des assemblies
    Pas bien compris ce que tu voulais dire

    Sous VS tu dit ou se trouve ta dll, mais c'est pas sur que l'exe seul sache où elle se trouve
    Ma DLL est intégré avec du DLL import dans lequel j'ai le chemin complet (c:\\...) donc imo il sait où elle est...

    En tout cas merci pour ton aide.

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Comprends tu les termes suivant :
    1) build.
    2) assemblies.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Il me semble, le build c'est mon exe compilé et les assembly c les différents composants qui me servent à le faire. Mais bon vu que mon problème était clairement orienté vers l'utilisation de ma DLL je vois pas le rapport.

    Enfin bref, de toute, problème solutionné, c'était lors du passage d'une chaine de caractère entre ma DLL et mon appli que ca foutait le brun. Coté C++ j'ai un LPCTSTR coté C# j'ai un string (j'viens de VB, moi et les typages on est pas ami), ca marche très bien dans l'environnement de dev mais dès que je lance l'EXE direct ca va au mur.

    J'ai contourné le problème en ne remontant pas de string et maintenant tout fonctionne.

    Merci ! :p

  9. #9
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Bah si c t un problème de code ...
    Dans les assemblies il y a les ref vers la dll aussi (du moins je crois) donc je pensais que cela pouvait venir de là
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

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

Discussions similaires

  1. Réponses: 58
    Dernier message: 11/02/2012, 10h03
  2. Application qui plante quand lancé par sans débugage
    Par bossun dans le forum Général Dotnet
    Réponses: 9
    Dernier message: 12/07/2007, 12h08
  3. Envoyer les données du formulaire directement par mail
    Par McAdam dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 09/04/2006, 01h51
  4. Groupe de Projets : Quand le faire ?
    Par radimby dans le forum EDI
    Réponses: 5
    Dernier message: 19/12/2005, 09h54
  5. [QuickReport] Changer la direction par le code
    Par cadetill dans le forum Composants VCL
    Réponses: 2
    Dernier message: 11/08/2005, 14h09

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