J'ai une bibliothèque de classes écrite en .Net que je voudrais mettre à la disposition de VB6/VBA. Ce que j'ai essayé n'a pas fonctionné (évidemment puisque je pose cette question). Voici ce que j'ai fait:Rendre une DLL COM accessible
- J'ai créé un projet de bibliothèque de classes dans Visual Studio 2010 Express et ai placé le code dans un module de classe.
- J'ai ouvert les propriétés du projet et suis allé à "Informations d'assemblage" et coché "Rendre COM visible".
- Je suis allé aux options "Advanced Compile" et ciblé .Net 2.0 (c'est un code très simple).
- J'ai ensuite supprimé toutes les références attendues pour "Système".
- J'ai construit le projet (sans avertissement ni erreur) et copier la DLL hors du dossier Bin dans C: \ Windows \ System32 \
- J'ai couru regsvr32 pour enregistrer la DLL et a obtenu l'erreur:
The module "MyDll.dll" was loaded but the entry-point DLLRegisterServer was not found.
Make sure that "MyDll.dll is a valid DLL or OCX file and then try again.
Il est clair que ma première tentative était un peu naïve. Quelqu'un pourrait-il offrir des conseils?
regsvr32 ne peut pas être utilisé sur les assemblys .NET. Utilisez les arguments regasm et optionnels - http://msdn.microsoft.com/en-us/library/tzat5yw6%28VS.71%29.aspx –