Assembly regasm Problem

27. Juni 2012 11:56

Hallo,

ich bin auf ein merkwürdiges(?) Phänomen gestoßen:
Ich habe eine .NET dll erstellt, die als COM Automation in NAV genutzt werden soll. Ich habe in den Eigenschaften des Projektes unter "Build" die Option "Register for COM Interop" angewählt und in den Assembly Information die Option "Make assembly COM-visible" markiert.
Wenn ich das Projekt kompiliere, kann ich auf diesem Rechner die Assembly ohne Probleme benutzen. (In NAV Automation-Auswahl sichtbar.)
Wenn ich aber die Dateien auf einen anderen Rechner kopieren und per regasm (/tlb) /codebase die dll registriere, gibt es zwar eine Erfolgsmeldung, aber NAV zeigt die COM Automation einfach nicht an.
Ich habe es dann mit einem Setup-Projekt mit COM Registrierung versucht, aber dies brachte auch kein Ergebnis.

Assembly is siniert und die Klasse hat als COM Interop folgende Informationen:
Code:
[ClassInterface(ClassInterfaceType.AutoDual)]
[ProgId("xyz")]
[ComVisible(true)]


Hat da jemand einen Rat?

Re: Assembly regasm Problem

27. Juni 2012 12:53

Hi Jan,

bei mir sieht das immer ein bischen anders aus, aber hast Du mal probiert Dein Project als x86 zu kompilieren?

Volker

Re: Assembly regasm Problem

27. Juni 2012 12:57

Hi Volker,

wo könnte ich das einstellen?

Gruß
Jan

Re: Assembly regasm Problem

27. Juni 2012 13:05

C#? Projektmappen-explorer, rechtsklick aufs Projekt und eigenschaften, unter erstellen sollte die Zielplattform stehen. Bei Dir wahrscheinlich any cpu. änder da mal auf x86.

Volker