Es gibt ein altes Projekt in ASP, aber einige Funktionen können nicht in ASP implementiert werden, aber es ist einfach, es in .net zu implementieren, daher ist der genannte Titel genau das Richtige.
Da es das erste Mal war, dass ich es gemacht habe, hat es einen ganzen Tag gedauert und einige Umwege mit sich gebracht. Lassen Sie mich es jetzt zusammenfassen.
Schritt 1.
Erstellen Sie in vs2003 ein neues Klassenbibliotheksprojekt. Stellen Sie unter „Projekteigenschaften“ – „Konfigurationseigenschaften“ – „Generieren“ „Für COM-Interop registrieren“ auf „True“ (
Schritt 2).
Fügen Sie eine Klasse hinzu, der Dateiname spielt keine Rolle
Namensraum TEST
{
öffentliches Klassenzimmer
{
....
öffentlicher String-Test()
{
return „Hallo, Welt!“;
}
}
}
Projekt generierenSchritt
3.
Fügen Sie eine neue ASP-Datei hinzu
<%
set obj=Server.CreateObject("TEST.dosm")
Antwort.write obj.test()
%>
Beim Durchsuchen dieser .asp-Datei wird „Hello, world!“ angezeigt. Dasselbe gilt für erfolgreiche Aufrufe und andere Vorgänge.
Hinweise:
1. Wenn Sie diese Komponente auf anderen Computern verwenden möchten, kopieren Sie die generierte DLL-Datei auf den entsprechenden Computer und registrieren Sie sie dann mit „regasm your.dll /codebase“. Das Regasm-Programm befindet sich in „%SystemRoot%“. Verzeichnis „Microsoft.NETFramework%FrameworkVersion%“.
2. Der zurückgegebene Datentyp unterliegt möglicherweise einigen Einschränkungen, z. B. dem Array-Typ, auf den in vbscript nicht leicht zugegriffen werden kann (ich habe es nicht ausprobiert :( ). Ich frage mich, ob Sie gute Methoden haben.
3. Die aufgerufene Funktion kann nicht sei eine statische Funktion, andernfalls wird sie nicht gefunden.