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

Dotnet Discussion :

Passage en production impossible à cause des dll!


Sujet :

Dotnet

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 49
    Par défaut Passage en production impossible à cause des dll!
    Bonjour à tous, je suis face à une incompréhension:
    Mon équipe a développé une application ASP.NET (C# framework 2.0) qui utilise une dll externe. Avant d'aller plus loin il faut savoir que cette dll (a.dll) est mise dans le répertoire Windows/System32 sur les postes de développements et sur le serveur de prod. Pour pouvoir utiliser cette dll, nous utilisons une dll "wrappeuse" (wrap.dll) qui fait la liaison de a.dll vers l'application ASP.NET.
    Sur les serveurs locals des développeurs (j'entends par là le serveur de Visual Studio 2005) cela fonctionne parfaitement mais lorsque que l'on passe l'application sur le serveur de prod ça marche pas. En fait tout marche tant que l'application n'instancie pas d'objets de a.dll..... On obtient une erreur de type System.Runtime.InteropServices.SEHException (voir ).
    J'avoue ne pas bien saisir cette erreur..Une erreur générée par a.dll? Une fuite mémoire?

    Il faut savoir que je peux reproduire cette erreur en enlevant a.dll ou/et wrap.dll du répertoire windows/system32 des postes de développement. Mais au vu du essage d'erreur je ne suis pas certains à 100% que l'erreur de base déclanchant l'exception soit la même....

    Je suppose une chose pouvant générer l'erreur sur le serveur: le framework n'arrive pas à voir les dll. Or j'ai bien enregistré a.dll via regsrv32 (wrap.dll ne passe pas puisse que c'est un wrapper). Je pencherai donc vers une problème de droits mais le problème c'est que je ne trouve pas....

    Il faut savoir que le serveur de prod est sous Win2003 server sp2 , possède une partition C: et une D: et nous devons mettre l'application ASP.NET dans D:/Webs et non dans C:/Inetpub/wwwroot. (Ca peut venir de là aussi non?)

    Sinon est-il possible de pré-compiler l'application (c'est à dire on ne déposerait pas les fichiers sources sur le serveur) avec les dll externes?

    Je ne vois pas de solutions. Merci d'avoir lu mon message et n'hésitez pas si vous avez une piste, idée ou si ce genre de problème vous ai déjà arrivé.

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Ta DLL a.dll est ce une DLL native ou bien une assembly managée ?
    Si c'est une assembly managée, pourquoi ne pas la stocker dans le GAC ?
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 49
    Par défaut
    Je ne suis pas celui qui à créer les dll a.dll et wrap.dll mais j'imagine que la a.dll est native et que wrap.dll est une managée.

    Mais je ne suis pas certain de ma définition entre natif/managée.

    Sinon si ça peut aider, j'ai remarquer que dans les fichiers temporaires sur le poste développeur, que seul wrap.dll apparait dans le cache du framework dotNet.

    De toute façon nous n'avons rien mis dans le GAC sur les postes de développement.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 49
    Par défaut
    Sur les postes de développements, nous avons fait Projet-> ajouter une référence et nous avons ajouté a.dll et wrap.dll. Ca les a peut etre ajouter dans la GAC?
    Mais je ne les vois pas en utilisant l'outils d'administration du framework .Net 2 en affichant les assemblys enregistré bizarre

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/05/2007, 12h01
  2. Import/export sql 2000 impossible à causes des clés étrangères
    Par chouchou2clichy dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 24/03/2007, 08h27
  3. Réponses: 27
    Dernier message: 03/02/2003, 12h27
  4. [] [Install] Problème de mise à jour des dll
    Par pepper dans le forum Installation, Déploiement et Sécurité
    Réponses: 4
    Dernier message: 23/01/2003, 22h34
  5. [VB6]Passage d'un tableau dans une DLL écrite en delphi
    Par flash dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 20/09/2002, 10h15

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