2010-06-17 6 views
5

Jedes Mal, wenn ich meine C# -Lösung erstelle, bekomme ich eine Handvoll Warnungen über Interfaces, die ich noch nie gesehen oder geschrieben habe. Ich habe versucht, für einige von ihnen zu googeln, aber keine Treffer bekommen. Könnten diese möglicherweise in einer Versammlung vergraben sein, auf die ich mich beziehe? Wenn ja, gibt es eine Möglichkeit, diese Warnungen wegzulassen?Warnungen über Mystery-Interfaces in C# -Projekten

Schnittstelle 'IAlertable' ist als [dual] gekennzeichnet, stammt jedoch nicht von IDispatch. Es wird als eine von IUnknown abgeleitete Schnittstelle konvertiert.

Schnittstelle "ICustomizationPermissionsReports" ist als [dual] gekennzeichnet, stammt jedoch nicht von IDispatch. Es wird als eine von IUnknown abgeleitete Schnittstelle konvertiert.

Schnittstelle 'IAlertable2' ist als [dual] gekennzeichnet, stammt jedoch nicht von IDispatch. Es wird als eine von IUnknown abgeleitete Schnittstelle konvertiert.

+1

Haben Sie in den Projekteinstellungen die Einstellung ** Registrierung für COM-Interop ** aktiviert? – ChaosPandion

+0

Haben Sie auf COM-DLLs verwiesen? Sie erhalten diese Warnungen, wenn referenzierte COM-Komponenten nicht korrekt definiert sind. –

+0

@Chaos: Im Abschnitt Build der Eigenschaften in meinem Projekt wurde "Register for COM interop" nicht aktiviert und ist tatsächlich deaktiviert. –

Antwort

6

Sie müssen aus einer COM-Baugruppe stammen, auf die Sie verweisen. Sie könnten versuchen, herauszufinden, welche. Es sieht so aus, als wäre der Wrapper-Code falsch geschrieben/generiert worden.

Und Visual Studio hat eine "Unterdrückung Warnungen:" Textfeld, aber ich bin ratlos, was ich dort eingeben soll.
Projekteigenschaften, Build

4

Dies sind Schnittstellen zum HP Quality Center OTA-API "Interop.TDAPIOLELib", einer ActiveX COM-Typbibliothek. Überprüfen Sie Ihre Referenzen.