COM DLL erstellen (Einstiegspunkt definieren)

Warum liesst du dir nicht die Dokumentation zum Tool RegASM durch, die ich im letzten Post mit hingeschrieben habe? Dort sind alle Parameter beschrieben und es gibt auch kleinere Beispiele.

Die CSC.exe ist der C# Compiler und hat nichts mit der Registrierung zu tun.
Er übersetzt deinen Quellcode( Quelltext in c#) in die MSIL (Virtuelle Maschinensprache), da heisst er erzeugt aus denen Quelltextdateien die Assembly (exe, dll o.ä.).
Deine Assembly erzeugst schon auf deinem Entwicklungsrechner und braucht auf den Zielsystemen nicht extra übersetzt werden.

Dein Beschriebener Fehler kommt wohl daher das es ein Kompilierungsfehler gibt, weil du vermutlich in der Compileranweisung das Frameworkassembly für den die Klassen aus dem Namespace "System.Data" vergessen hast mit anzugeben.

Ich würde probieren mal mit RegAsm eine Registrierungdatei erzeugen und diese mal auf dem Zielsystem auszuführen.
 
Ich habe mir "deinen" Link angesehen und die Beispiele getestet. Da bin ich auch auf die Geschichte mit "regfile" gekommen.

Hab das Teil "erfolgreich" in die Registry eingetragen, aber trotzdem das nicht.

Sobald ich auf dem Rechner Visual Studio installiere und die dll damit erstelle, geht das...

Irgendwie blicke ich da langsam nicht mehr durch.

Bekomme ja teilweise die Fehlermeldungen wegen dem "starken Namen". Kann das evtl. doch ein Grund für meine Probleme sein?
 
Das Tool RegASM hat einen Parameter /codebase damit wird unterschieden, ob die DLL im Global Assembly Cache abgelegt werden soll.
Wenn ja ist ein Strongname erfordlich, d.h. u.a. die Komponente muss signiert werden.
Soll die DLL nur in aus einem Programm heraus verwendet werden, d.h. sie liegt mit im Programmverzeichnis benötigt sie keinen Strong Name.
 
Es funktioniert. Habe jetzt die dll registriert bekommen.

Der Artiker bei DevTrain war sehr hilfreich.

DevTrain

Über den Befehl

Code:
regasm DllName.dll /tlb: tlbName.tlb

hat es letztendlich funktioniert.

Vielen Dank für Eure Hilfe
 
Zurück