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 :

faire tourner une appli .NET avec une référence manquante


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Points : 88
    Points
    88
    Par défaut faire tourner une appli .NET avec une référence manquante
    Bonjour,

    J'ai écrit une solution .NET WinForms, qui contient 2 projets.

    Le projet P64 est destiné à tourner sur des plate-formes 64 bits.

    Le projet P32 est destiné à tourner sur des plate-formes 32 bits.

    Cependant, ces 2 projets utilisent tous deux une DAL commune, qui est une assembly faisant partie de ma solution. Celle-ci contiendra à terme des choses qui seront utilisées par les 2 projets, et d'autres choses qui ne seront utilisées que par le projet P32.

    Mon problème est le suivant : la DAL contient une référence vers une assembly externe, disponible uniquement en 32 bits. Je ferai en sorte que les méthodes de cette DAL, faisant appel à des méthodes de cette assembly externe ne soient appelées que par le projet P32, mais je crains que lorsque je vais déployer mon projet P64, sans cette assembly externe, j'ai une erreur d'exécution. Je n'appelerai aucune méthode de l'assembly externe lors de l'exécution du projet P64, mais je crains que la CLR hurle dès le début, en voyant qu'une référence est absente.

    Comment faire pour que tout ceci fonctionne?

    J'espère avoir été assez clair.

    Cordialement.

  2. #2
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 441
    Points
    4 441
    Par défaut
    Bonjour Nico57
    Comme tu veux "arnaquer" le JIT continue dans cette voie:
    Puisque cet assembly externe n'est jamais appele par le projet P64 cree :
    -un assembly du meme nom (nom de la dll)
    -du meme namespace
    -vide
    que l'assembly d'origine et reference le dans ton P64....
    Subtitue cette assembly a l'original apres avoir genere le p32 normalement et avant de generer le P64.....
    bon code.......

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Points : 88
    Points
    88
    Par défaut
    Bonjour Mabrouki,

    Merci pour ta réponse.

    Finalement, je n'ai pas eu besoin de faire trop compliqué, je me suis rendu compte que tant qu'aucune méthode de l'assembly externe n'est appelée, hé bien, il n'y a pas besoin de livrer cette assembly, car la CLR ne tente même pas de la charger. Je suppose que la CLR ne tente de la charger que lorqu'elle en a vraiment besoin.

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

Discussions similaires

  1. [Débutant] mise à jour automatique d'une appli fonctionnant avec une bdD locale
    Par noftal dans le forum VB.NET
    Réponses: 21
    Dernier message: 19/12/2013, 11h08
  2. Réponses: 3
    Dernier message: 25/01/2013, 14h01
  3. Réponses: 2
    Dernier message: 31/03/2009, 10h59
  4. Réponses: 1
    Dernier message: 06/03/2009, 10h02
  5. Faire tourner des applis .Net sous Linux
    Par PM_calou dans le forum Administration système
    Réponses: 2
    Dernier message: 29/03/2007, 11h30

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