Ist es möglich, eine .NET-DLL mit sichtbaren COM-Typen zu erstellen, ohne dass VS erhöht werden muss?

8

Eine Assembly in einem Projekt hat einen Typ, der mit ComVisible (true) gekennzeichnet ist.

Beim Erstellen (nicht erhöht) versucht VS, diese DLL zu registrieren und schlägt fehl:

Kann Assembly "\ Pfad \ zu \ foo.dll" nicht registrieren - Zugriff verweigert. Stellen Sie sicher, dass Sie die Anwendung als Administrator ausführen. Zugriff auf den Registrierungsschlüssel 'HKEY_CLASSES_ROOT \ CLSID {FFC174A1-CC90-4E25-A3F6-C30B03368250}' wird verweigert.

Wir wollen nicht wirklich, dass sich die DLL auf den Erstellungscomputern registriert. Wir möchten es nur registrieren, wenn wir es für den Endbenutzer installieren.

So ist es möglich, ohne Registrierung der DLL zu erstellen?

    
Rik Hemsley 24.03.2011, 11:20
quelle

1 Antwort

6
  

So ist es möglich, ohne Registrierung der DLL zu erstellen?

Ja. In den Projekteinstellungen (Rechtsklick, "Eigenschaften") unter "Build" gibt es ein Kontrollkästchen "für COM-Interop registrieren".

    
Wim Coenen 24.03.2011, 15:59
quelle