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

VB.NET Discussion :

Classe non enregistrée: ajouter dll au projet


Sujet :

VB.NET

  1. #1
    Membre éprouvé Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

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

    Informations forums :
    Inscription : mars 2010
    Messages : 617
    Points : 947
    Points
    947
    Par défaut Classe non enregistrée: ajouter dll au projet
    Bonjour à tous,

    J'ai créé une application que j'ai publié en ClickOnce. Mon application utilise des base de données Access 2007. Lorsque je lance le setup sur le "PC1" qui a créé l'appli tous ce passe bien (installation et programme).
    Mais si je lance ce setup sur un autre "PC2", l'installation se passe bien mais lorsque le programme se lance, j'ai le message d'erreur suivant:

    System.Runtime.InteropServices.COMException(0x80040154): classe non enregistrée
    à ADOX._Catalog.Create(String ConnectString)
    à MonProjet.My.MyApplication.MyApplication_Startup(Object sender, Startup EventArgs e)
    Au démarrage de l'application, je vérifie si une BDD Truc exsite. Si elle n'exsite pas, je l'a créé comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    'Créer une base au nom de l'utilisateur
    Dim catBDDTruc As New ADOX.Catalog
     
    'création de la BDD Truc
    catBDDTruc.Create("Provider=Microsoft.ACE.OLEDB.12.0 ; Data Source=" & Environment.CurrentDirectory & "\Truc.accdb ; Jet OLEDB:Database Password=" & My.Settings.Password)
    ........
    J'utilisa la référence "Microsoft ADO Ext. 2.8 for DDL and Security" de type COM, nom de la dll: Interop.ADOX pour pouvoir créer cette BDD

    Je suis certain que l'erreur vient du fait que la dll n'est pas sur l'ordinateur "PC2".

    Donc ma question est:
    Comment ajouter cette dll (ou autre si c'est pas la solution de l'erreur) au setup? Comment l'utiliser dans le code?

    Merci pour vos aides,
    PS: excusez moi si le question peut paraître bête car je n'ai jamais manipulé des dll autres que celles du framework

  2. #2
    Membre émérite Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 1 707
    Points : 2 528
    Points
    2 528
    Par défaut
    Dans "Myproject" de ta solution... Tu dois avoir un menu "référence".

    La tu dois avoir toutes tes dll utilisés. une des colonnes est "Copy local", si tu le mets a "True", théoriquement, la Dll sera installer avec.
    L'avenir appartient à ceux... dont les ouvriers se lèvent tôt. (Coluche)

  3. #3
    Membre éprouvé Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

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

    Informations forums :
    Inscription : mars 2010
    Messages : 617
    Points : 947
    Points
    947
    Par défaut
    Effectivement la référence est à false pour "Copie locale". Mais je n'arrive pas à modifier cette valeur.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    octobre 2006
    Messages
    665
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2006
    Messages : 665
    Points : 1 161
    Points
    1 161
    Par défaut
    Bonjour
    je crois qu'avec le double clic, les propriétés s'affichent et on change dedans.

  5. #5
    Membre éprouvé Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

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

    Informations forums :
    Inscription : mars 2010
    Messages : 617
    Points : 947
    Points
    947
    Par défaut
    Il faut mettre la propriétés "Incorporer les types interop" à False pour avoir "Copie locale" à True.

  6. #6
    Membre émérite Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 1 707
    Points : 2 528
    Points
    2 528
    Par défaut
    Bon a savoir !
    L'avenir appartient à ceux... dont les ouvriers se lèvent tôt. (Coluche)

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

Discussions similaires

  1. Erreur Classe non enregistrée
    Par nassoft dans le forum Delphi
    Réponses: 13
    Dernier message: 26/05/2007, 12h56
  2. BDS2006, "Classe non enregistrée"
    Par maxim_um dans le forum C++Builder
    Réponses: 7
    Dernier message: 11/05/2007, 19h51
  3. EoleSysError classe non enregistrée
    Par Daniel Magron dans le forum Delphi
    Réponses: 10
    Dernier message: 19/11/2006, 11h36
  4. classe non enregistrée
    Par kilian dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/11/2006, 12h35
  5. [ToutlookApplication] Classe non enregistrée
    Par nico33410 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 22/08/2005, 10h36

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