J'essai de creer une dll en .net et de l'enregistrer avec la commande "regsvr32 madll.dll"
mais j'ai une erreur :
"madll.dll a été chargé mais le point d'entrée DLLRegisterServer est introuvable. Ce fichier ne peut pas être enregistré."
voici le code de ma source
using System;
namespace madll
{
/// <summary>
/// Description résumée de Class1.
/// </summary>
public class madll
{
private string _chaine;
public madll()
{
_chaine = "rien";
}
public string chaine
{
get
{
_chaine = "ca marche ?";
return _chaine;
}
}
public string Ecrire()
{
return _chaine;
}
}
}
Merci d'avance, ne serait ce que pour avoir pris le temps de lire mon pb.
Oui, une DLL .NET n'est pas une "vrai" Dll au sens ou l'entends Windows. Elle n'a pas de point d'entrée par exemple.
Enfin d'une facon général, tu ne peux pas utiliser dans un code les directives DllImport ou Declare en VB pour loader une fonction de cette DLL.
Maintenant je me pose une nouvelle question, comment font les entreprises pour developer des composants ASP en .net genre des mailers ou objets permettant de creer des menus javascript ? Dans Visual studio, ils passe à travers le pb en faisant des services windows ?
En gros je suis censé construire un composant en .net, en c# de préférence, qu'on utilisera en ASP pour construire des Tableau HTML avec le resultat d'une requete SQL.
il ne faut pas tout mélanger
je me permet ces quelques précisions
il y a trois sortes de DLLs maintenant dans le monde Windows
1) la DLL simple (faisable en C ou C++) qui contient des points d'entrées, et en particulier DllMain.
c'est celle là qui peut être utilisée à partir de DOTNET par la technologie P/Invoke ... les DllImport
2) la DLL COM qui est très spéciale (et relativement complexe). C'est elle qu'il est nécessaire d'enregistrer avec "RegSvr32". Il n'est plus possible d'en créer avec Visual Studio 7. Il est toutefois possible de communiquer avec elle à partir de DOTNET en utilisant la technologie Interop... click droit aujout de référence COM
3) la DLL Assembly DOTNET
C'est celle là qu'il faut utiliser maintenant préférenciellement à partir de toute application DOTNET, que ce soit une Winform ou une WebForm (ASPX). Dans l'application, faire click droit et ajout de référence.
Hello,
Juste une petite indication, avec VS .Net, il est possible de mettre une option "Register COM for Interop". Pour cela, un clic droit sur le projet, choisir properties, Configuration properties, Build.
Amicalement SharpMao
Vous n’avez pas trouvé la réponse que vous recherchez ?