Verwenden von Bibliotheken und Komponenten

In C++-Projekten ist oft der Aufruf von Funktionen oder der Zugriff auf Daten in einer Binärdatei wie einer statischen Bibliothek (LIB-Dateien), einer DLL, einer Komponente für Windows-Runtime, einer COM-Komponente oder einer .NET-Assembly erforderlich. In diesen Fällen müssen Sie das Projekt so konfigurieren, dass die Binärdatei zur Buildzeit gefunden werden kann. Die genauen Schritte hängen vom Typ Ihres Projekts, dem Typ der Binärdatei sowie davon ab, ob die Binärdatei in derselben Projektmappe wie Ihr Projekt erstellt wird.

Verwenden von über vcpkg heruntergeladenen Bibliotheken

Wenn Sie eine Bibliothek verwenden möchten, die Sie mithilfe des Paket-Managers vcpkg heruntergeladen haben, können Sie die Anweisungen unten ignorieren. Weitere Informationen finden Sie unter:

Verwenden von statischen Bibliotheken

Gehen Sie folgendermaßen vor, wenn Ihr Projekt mit statischer Bibliothek in derselben Projektmappe erstellt wird:

  1. #include die Kopfzeilendatei(n) für die statische Bibliothek mithilfe von Anführungszeichen. In einer normalen Projektmappe beginnt der Pfad mit ../<library project name>. IntelliSense unterstützt Sie bei der Suche danach.
  2. Fügen Sie einen Verweis auf das Projekt mit statischer Bibliothek hinzu. Klicken Sie im Projektmappen-Explorer unter dem Projektknoten der Anwendung auf die Option Verweise, und wählen Sie dort die Option Verweis hinzufügen aus.

Gehen Sie folgendermaßen vor, wenn die statische Bibliothek nicht Teil der Projektmappe ist:

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Knoten des Anwendungsprojekts, und wählen Sie die Option Eigenschaften aus.
  2. Fügen Sie auf der Eigenschaftenseite VC++-Verzeichnisse den Pfad zum Verzeichnis, das die LIB-Datei enthält, unter Bibliothekspfade hinzu. Fügen Sie dann den Pfad zu den Headerdateien der Bibliothek unter Includeverzeichnisse hinzu.
  3. Fügen Sie auf der Seite "Linker > Input" -Eigenschaft den Namen der LIB-Datei zu zusätzlichen Abhängigkeiten hinzu.

Wenn die DLL als Teil derselben Projektmappe wie die der Anwendung erstellt wird, befolgen Sie dieselben Schritte wie für eine statische Bibliothek.

Wenn die DLL nicht Bestandteil der Projektmappe der Anwendung ist, benötigen Sie die DLL-Datei, die Header mit den Prototypen der exportierten Funktionen und Klassen und eine LIB-Datei, die die erforderlichen Verknüpfungsinformationen bereitstellt.

  1. Kopieren Sie die DLL in den Ausgabeordner Ihres Projekts oder in einen anderen Ordner unter dem Standardsuchpfad für DLLs unter Windows. Weitere Informationen finden Sie unter "Suchreihenfolge der Dynamic-Link Library".
  2. Befolgen Sie die Schritte 1–3 für statische Bibliotheken, um die Pfade zu den Headern und der LIB-Datei bereitzustellen.

COM-Objekte

Wenn Ihre native C++-Anwendung ein COM-Objekt verwenden muss und dieses Objekt registriert ist, müssen Sie nur CoCreateInstance aufrufen und die CLSID des Objekts übergeben. Das System findet und lädt CoCreateInstance in der Windows-Registrierung. Ein C++/CLI-Projekt kann ein COM-Objekt auf gleiche Weise nutzen. Sie kann sie auch nutzen, indem sie einen Verweis aus der COM-Liste "Verweise > hinzufügen" hinzufügen und über den aufrufbaren Wrapper der Runtime verwenden.

.NET-Assemblys und Windows-Runtimekomponenten

In UWP- oder C++-/CLI-Projekten verwenden Sie .NET-Assemblys oder Windows-Runtimekomponenten, indem Sie einen Verweis auf die Assembly oder Komponente hinzufügen. Unter dem Knoten Verweise in einem UWP- oder C++-/CLI-Projekt finden Sie Verweise auf häufig verwendete Komponenten. Klicken Sie mit der rechten Maustaste auf den Knoten Verweise im Projektmappen-Explorer, um den Verweis-Manager zu öffnen und weitere Komponenten zu durchsuchen, die für das System verfügbar sind. Klicken Sie auf die Schaltfläche Durchsuchen, um zu Ordnern zu navigieren, in denen sich benutzerdefinierte Komponenten befinden. Da .NET-Assemblys und Windows-Runtimekomponenten integrierte Typinformationen enthalten, können Sie ihre Methoden und Klassen anzeigen, indem Sie mit der rechten Maustaste darauf klicken und die Option Im Objektkatalog anzeigen auswählen.

Verweiseigenschaften

Jede Art von Verweis verfügt über Eigenschaften. Sie können die Eigenschaften anzeigen, indem Sie den Verweis im Projektmappen-Explorer auswählen und ALT+EINGABEdrücken bzw. mit der rechten Maustaste klicken und Eigenschaftenauswählen. Einige Eigenschaften sind schreibgeschützt, während andere geändert werden können. Allerdings müssen Sie diese Eigenschaften in der Regel nicht manuell ändern.

ActiveX-Verweiseigenschaften

ActiveX-Verweiseigenschaften sind nur für Verweise auf COM-Komponenten verfügbar. Diese Eigenschaften werden nur angezeigt, wenn Sie eine COM-Komponente im Bereich Verweise auswählen. Die Eigenschaften können nicht geändert werden.

  • Vollständiger Pfad des Steuerelements

    Zeigt den Verzeichnispfad des Steuerelements an, auf das verwiesen wird.

  • GUID des Steuerelements

    Zeigt de GUID für das ActiveX-Steuerelement an.

  • Steuerelementversion

    Zeigt die Version des ActiveX-Steuerelements an, auf das verwiesen wird.

  • Typbibliotheksnamen

    Zeigt den Namen der Typbibliothek an, auf die verwiesen wird.

  • Wrappertool

    Hiermit wird das Tool angezeigt, das zum Erstellen der Interopassembly aus der COM-Bibliothek oder dem ActiveX-Steuerelement verwendet wird, auf die bzw. das verwiesen wird.

Assemblyverweiseigenschaften (C++/CLI)

Assemblyverweiseigenschaften sind nur für Verweise auf .NET Framework-Assemblys in C++-/CLI-Projekten verfügbar. Diese Eigenschaften werden nur angezeigt, wenn Sie eine .NET Framework-Assembly im Bereich Verweise auswählen. Die Eigenschaften können nicht geändert werden.

  • Relativer Pfad

    Zeigt den relativen Pfad vom Projektverzeichnis zur Assembly an, auf die verwiesen wird.

Buildeigenschaften

Die folgenden Eigenschaften stehen für verschiedene Arten von Verweisen zur Verfügung. Sie ermöglichen Ihnen die Angabe, wie die Erstellung mit Verweisen erfolgen soll.

  • Lokale Kopie

    Gibt an, ob die Assembly, auf die verwiesen wird, während eines Buildvorgangs automatisch an den Zielspeicherort kopiert wird.

  • Lokale Satellitenassemblys kopieren (C++/CLI)

    Gibt an, ob die Satellitenassemblys der Assembly, auf die verwiesen wird, während eines Buildvorgangs automatisch an den Zielspeicherort kopiert werden. Wird nur verwendet, wenn Lokale Kopie den Wert true aufweist.

  • Verweisassemblyausgabe

    Hiermit wird angegeben, dass die Assembly im Buildprozess verwendet wird. Wenn true, wird die Assembly während des Buildvorgangs an der Befehlszeile des Compilers verwendet.

Interprojektverweiseigenschaften

Die folgenden Eigenschaften definieren einen Verweis zwischen Projekten von dem im Bereich Verweise ausgewählten Projekt auf ein anderes Projekt in derselben Projektmappe. Weitere Informationen finden Sie unter Verwalten von Verweisen in einem Projekt.

  • Bibliothekabhängigkeiten verknüpfen

    Wenn für diese Eigenschaft True gilt, verknüpft das Projektsystem die LIB-Dateien, die vom unabhängigen Projekt erstellt werden, in das unabhängige Projekt. Normalerweise geben Sie True an.

  • Projektbezeichner

    Identifiziert eindeutig das unabhängige Projekt. Der Eigenschaftswert ist eine interne System-GUID, die nicht geändert werden kann.

  • Bibliothekabhängigkeitseingaben verwenden

    Wenn für diese Eigenschaft False gilt, verknüpft das Projektsystem die OBJ-Dateien für die Bibliothek, die vom unabhängigen Projekt erstellt wurden, nicht in das abhängige Projekt. Folglich deaktiviert dieser Wert inkrementelles Verknüpfen. In der Regel geben Sie False an, da das Erstellen der Anwendung lange dauern kann, wenn viele unabhängige Projekte vorhanden sind.

Schreibgeschützte Verweiseigenschaften (COM & .NET)

Die folgenden Eigenschaften gelten für COM- und Assemblyverweise und können nicht geändert werden.

  • Assemblyname

    Zeigt den Assemblynamen für die Assembly an, auf die verwiesen wird.

  • Kultur

    Zeigt die Kultur des ausgewählten Verweises an.

  • Beschreibung

    Zeigt die Beschreibung des ausgewählten Verweises an.

  • Vollständiger Pfad

    Zeigt den Verzeichnispfad der Assembly an, auf die verwiesen wird.

  • Identität

    Für die .NET Framework-Assemblys wird der vollständige Pfad angezeigt. Zeigt die GUID für COM-Komponenten an.

  • Bezeichnung

    Zeigt die Bezeichnung des Verweises an.

  • Name

    Zeigt den Namen des Verweises an.

  • Öffentliches Schlüsseltoken

    Hiermit wird das öffentliche Schlüsseltoken zur Identifizierung der Assembly angegeben, auf die verwiesen wird.

  • Starker Name

    true, wenn die Assembly, auf die verwiesen wird, einen starken Namen besitzt. Eine Assembly mit starkem Namen verfügt über eine eindeutige Versionsangabe.

  • Version

    Zeigt die Version der Assembly an, auf die verwiesen wird.

Siehe auch

Windows C++-Projekteigenschaftenseitenverweis
Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio