2009-06-01 5 views
0

Ich bin auf der Suche nach dem Gegenstück von C++ # pragma Kommentar (lib, "Name"); aber für C# und Hinzufügen von Baugruppenreferenzen. Wie kann ich es tun?Referenz im Code mit C# hinzufügen?

+0

Haben Sie eine native Bibliothek oder eine andere .NET-Assembly verweisen möchten? –

+0

native Bibliothek –

Antwort

1

Denken Sie nicht, dass Sie dynamisch eine Referenz über Code hinzufügen können.

Sie könnten jedoch die benötigte Baugruppe über Reflection in Code laden (Assembly.LoadXXX-Methoden) und dann auf die darin definierten Typen zugreifen.

0

Sie dies nicht tun können, weil der C# -Compiler vorher die Referenz muss in der Lage sein, die IL zu erzeugen, während der C++ Compiler hat Header-Dateien, die das Layout der referenzierten Bibliotheken beschreiben (zumindest aus einer Parser/Verifikations-Perspektive - es benötigt die LIB in der Generierungsphase, um tatsächlich die Offsets schreiben zu können)

1

Wenn ich richtig verstehe, können Sie PInvoke durch Verwenden Sie [DLLImport], wie im Beispiel unten:

[DllImport("User32.dll", SetLastError=true)] 
static extern Boolean MessageBeep(UInt32 beepType);