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 :

DLL créé avec VS2010 dans Office2003


Sujet :

Dotnet

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 22
    Par défaut DLL créé avec VS2010 dans Office2003
    Bonjour,
    j'ai écrit une dll (Bibliothèque de classe) avec vs2010 (.net framework 2).
    C'est juste une dll de test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    using System;
    using System.Collections.Generic;
     
    using System.Text;
     
    namespace DLLTest
    {
        public class cTest
        {
            string test()
            {
                return "OK";
            }
        }
    }
    Cependant, lorsque j'essaie de la référencer dans vba de office 2003, il me dit qu'il lui est
    Impossible d'ajouter une référence au fichier spécifié.
    Cela est peut être du au fait que lorsque j'essaie de faire regsvr32.exe DllTest.dll, il me dit qu'il n'arrive pas à trouver le point d'entrée DllRegisterSvr.
    Est ce que quelqu'un a une idée pour me sortir de ce mauvais pas?
    Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de Webman
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 232
    Par défaut
    Bonjour,

    Vous avez généré votre DLL avec VS 2010, mais surtout quelle version de l'API Office utilisez-vous, il faut que vous référenciez les DLL 2003 d'Office (Office 11 de mémoire), non la version 2007 ou 2010. Pour commencer pouvez confirmer que vous référencez les bonnes DLL ? Merci.

    Cordialement,
    Ronald
    Rédacteur .Net
    MVP C#
    Mes articles - CodeQuake (blog)
    Pas de question technique par MP, merci.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 22
    Par défaut
    Bonjour,
    Merci de m'avoir répondu. Je ne comprends pas pourquoi il faut que je référence les dll office?
    J'ai du mal m'expliquer. Le but, en fait, est de créer une dll qui implemente des interfaces fournies en .net et qui fonctionnerait sur office 2003.

    De plus, j'ai un petit peu avancer dans ma recherche en fouinant, j'ai utiliser l'outil regasm.exe dans l'invite de commande Visual Studio 2010 avec la syntaxe regasm DLLTest.dll (apres avoir mis ma dll dans le rep '\WIndows\System32'.
    Cela a eu pour effet de pouvoir referencer cette DLL dans le VBA Editor de Excel 2003.
    Apres je suis coincer car je peux ecrire le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Sub Essai()
       dim azerty as new DLLTest.cTest
    End Sub
    Le code fonctionne car quand je passe en 'Débogage pas à pas', le débogueur me dit bien que azerty a implémenter la classe cTest mais l'intellisense ne me donne pas de méthode(que j'ai pourtant dans ma dll).
    De plus l'explorateur d'objet me dit la même chose.

    Je pense que l'erreur doit maintenant coincer dans l'écriture de ma dll mais je ne vois pas où.
    Si quelqu'un connait le problème et à la solution je suis preneur. Merci !

  4. #4
    Expert confirmé
    Avatar de Webman
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 232
    Par défaut
    Bonjour,

    Effectivement vous avez raison, apparement j'étais mal réveillé hier matin et j'ai lu le contraire (piloter Office depuis .Net...). Je ne peux cependant faire qu'un simple UP pour vous car je ne connais que trés peu VBA donc je ne saurais pas voir dire comment attaquer une dll .Net depuis Office. Désolé pour la méprise.

    Cordialement,
    Ronald
    Rédacteur .Net
    MVP C#
    Mes articles - CodeQuake (blog)
    Pas de question technique par MP, merci.

Discussions similaires

  1. Lier une DLL crée avec FORTRAN dans VB .NET
    Par c4ever dans le forum VB.NET
    Réponses: 10
    Dernier message: 19/06/2015, 09h51
  2. Réponses: 7
    Dernier message: 23/10/2012, 17h17
  3. [MFC][DLL]Dialog Avec ActiveX dans une DLL ?
    Par matazz dans le forum MFC
    Réponses: 1
    Dernier message: 16/05/2005, 16h36
  4. [VStudio 6] pb avec fonctions dans une DLL
    Par MogDeChNord dans le forum MFC
    Réponses: 8
    Dernier message: 08/01/2004, 08h57
  5. PB avec "self" dans une dll
    Par DiJiRiDouS dans le forum Langage
    Réponses: 2
    Dernier message: 21/02/2003, 09h32

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