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:
- vcpkg in CMake-Projekten
- Installieren und Verwenden von Paketen mit CMake in Visual Studio
- vcpkg in MSBuild-Projekten
- Lernprogramm: Installieren und Verwenden von Paketen mit MSBuild in Visual Studio
Verwenden von statischen Bibliotheken
Gehen Sie folgendermaßen vor, wenn Ihr Projekt mit statischer Bibliothek in derselben Projektmappe erstellt wird:
- #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. - 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:
- Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Knoten des Anwendungsprojekts, und wählen Sie die Option Eigenschaften aus.
- 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.
- Fügen Sie auf der Seite "Linker > Input" -Eigenschaft den Namen der LIB-Datei zu zusätzlichen Abhängigkeiten hinzu.
Dynamic Link Librarys (DLLs)
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.
- 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".
- 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