Ich habe ein VB.Net-Projekt, das eine DLL von Drittanbietern verwenden muss, für die es auch eine Interop-Assembly gibt. So habe ich so etwas wie dieses:Assembly nicht in VS10 Objektbrowser
Hummingbird.DM.Server.Interop.PCDClient.dll
PCDClient.dll
ich Zugabe versucht den Verweis auf die Interop direkt in das Projekt, aber die Datei auf laufende ich eine COM bekam nicht registriert Fehler.
Also habe ich versucht, die Interop-Registrierung wie folgt:
gacutil /if "C:\....\Hummingbird.DM.Server.Interop.PCDClient.dll"
regasm "C:\....\Hummingbird.DM.Server.Interop.PCDClient.dll"
Auch nach VS Neustart ist die Montage noch nicht sichtbar.
Sie sagen also, ich sollte nur GACUTIL verwenden, und nicht beides? Ich habe die Registrierung mit "regasm/u ..." aufgehoben, dann habe ich "gacutil/if ..." ist das ausreichend? Mein System ist Win XP 32Bit. – udeleng
Sie sollten keines von beiden verwenden, dieser COM-Server ist wahrscheinlich kein verwalteter Code. Wie ich bereits sagte, überschreiben regasm die Registrierungsschlüssel für den COM-Server, Sie müssen es neu installieren. Die Verwendung von Regsvr32 für die * unmanaged * DLL (nicht für die Interop-Bibliothek) ist der wahrscheinlichste Weg. Fragen Sie nach Unterstützung vom Hersteller, wenn Sie mehr Probleme haben. –
Ich habe "regsvr32 PCDClient.dll" (das Interop ist immer noch in GAC, nicht sicher, ob das erforderlich ist), und jetzt sehe ich Interop.PCDCLIENTLib im Objekt-Browser aufgelistet. Können Sie bestätigen, dass die Schritte soll ich verwenden sind: gacutil/if "C: \ ... \ Hummingbird.DM.Server.Interop.PCDClient.dll" regsvr32 „C: \ ... \ PCDClient. dll " – udeleng