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

Windows Forms Discussion :

DLL en 32bits et prog en 64bits


Sujet :

Windows Forms

  1. #1
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 399
    Points : 259
    Points
    259
    Par défaut DLL en 32bits et prog en 64bits
    bonjour,

    je voulais savoir si le fait d'avoir des DLL qui ont été compilé 32bit pose un problème si je les utilise avec un programme qui va être compilé 64 bit

    le programme final tournera sur un pc 64bits

    Si je pose la question c'est que j'ai un plantage quand je lance mon programme et je sais pas d'où ça vient :

    Description :
    Stopped working
    Signature du problème :
    Nom d’événement de problème: CLR20r3
    Signature du problème 01: MonProg.exe
    Signature du problème 02: 1.0.0.0
    Signature du problème 03: 4a55ae29
    Signature du problème 04: MonProg
    Signature du problème 05: 1.0.0.0
    Signature du problème 06: 4a55ae29
    Signature du problème 07: 13
    Signature du problème 08: e0
    Signature du problème 09: System.InvalidOperationException
    Version du système: 6.0.6001.2.1.0.272.7
    Identificateur de paramètres régionaux: 1036
    Lire notre déclaration de confidentialité :
    http://go.microsoft.com/fwlink/?link...3&clcid=0x040c

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    je crois qu'il faut que tout soit en x86 ou tout en x64 ou tout en auto (anycpu)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Si c'est que du .NET, il faut tout compiler en AnyCPU (c'est la configuration par défaut). Pas besoin de compiler pour une architecture en particulier car le CLR charge le mode correct pour l'application en fonction de l'OS en cours.

    Si dans le lot il y a des dlls natives ou mixtes (C++/CLI, Delphi, etc.) il faudra qu'elle soient compilées pour la même architecture que le programme qui les utilise. Comme un exécutable .NET par défaut se lance en 64bits sur un OS 64bits, il faudra compiler ces dlls en 64bits.

    Jamais au grand jamais un programme 64bits ne peut utiliser directement des dlls 32bits et inversement. Si tu n'as pas le contrôle sur ce dernier point, la "seule" solution c'est les serveurs COM out-of-proc qui permettent d'exécuter les composants dans un processus hôte 32bits et les utiliser par le processus 64bits mais bon ...

  4. #4
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 399
    Points : 259
    Points
    259
    Par défaut
    merci smyley

    en fait j'ai des DLL.net que j'ai developpé étant donné que j'ai rien modifié par défaut elle sont en AnyCPU et j'ai aussi un objet com sur lequel je n'ai pas la main.

    je testerai tout ça, dès que j'ai réussi je mettrai le poste en résolu, pour l'instant je laisse ouvert au cas où.

  5. #5
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Ceci dit ton System.InvalidOperationException tu es sur qu'il ne surviens pas quelque par dans ton code ? tu as bien protégé tout avec des try-catch ? tu n'as pas d'erreur en debug ?

  6. #6
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 399
    Points : 259
    Points
    259
    Par défaut
    c'est que je suis en train de vérifier mais je ne pense pas.

    le problème c'est que chez moi ça fonctionne et je n'ai pas la main sur la machine final, donc le temps d'envoyer et que la personne me répond ça prend un peu de temps.

  7. #7
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Essayes de t'abonner à l'évènement My.Application.UnhandledException et d'y afficher dans un messagebox l'exception rencontrée ...

  8. #8
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 399
    Points : 259
    Points
    259
    Par défaut
    le problème vient de la dll qui ne m'appartient pas.

    donc on a laché l'affaire et passé sur un bon xp 32 bits

    merci à tous

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/01/2011, 15h39
  2. utiliser une lib 32bit dans un projet 64bit ? (MSVC)
    Par divide dans le forum Débuter
    Réponses: 1
    Dernier message: 14/05/2009, 18h27
  3. Réponses: 1
    Dernier message: 24/11/2008, 16h40
  4. Ne pas distribuer les DLL système avec son prog ?
    Par Muetdhiver dans le forum Visual C++
    Réponses: 8
    Dernier message: 01/03/2007, 12h50

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