Utilizzo di librerie e componenti

I progetti C++ spesso devono chiamare funzioni o accedere ai dati in un file binario, ad esempio libreria statica (file LIB), DLL, componente Windows Runtime, componente COM o assembly .NET. In questi casi, è necessario configurare il progetto in modo che possa trovare tale file binario in fase di compilazione. I passaggi specifici dipendono dal tipo di progetto, dal tipo del file binario e dal fatto che il file binario venga compilato nella stessa soluzione del progetto.

Utilizzo di librerie scaricate tramite vcpkg

Per utilizzare una libreria scaricata usando la gestione pacchetti vcpkg , è possibile ignorare le istruzioni riportate di seguito. Per altre informazioni, vedi:

Utilizzo di librerie statiche

Se il progetto di libreria statica viene compilato nella stessa soluzione:

  1. #include i file di intestazione per la libreria statica usando le virgolette. In una soluzione tipica, il percorso inizia con ../<library project name>. IntelliSense ti aiuterà a trovarlo.
  2. Aggiungere un riferimento al progetto di libreria statica. Fare clic con il pulsante destro del mouse su Riferimenti nel nodo del progetto dell'applicazione in Esplora soluzioni e scegliere Aggiungi riferimento.

Se la libreria statica non fa parte della soluzione:

  1. Fare clic con il pulsante destro del mouse sul nodo del progetto dell'applicazione in Esplora soluzioni e scegliere Proprietà.
  2. Nella pagina delle proprietà Directory di VC++ aggiungere il percorso alla directory contenente il file LIB in Percorsi libreria. Aggiungere quindi il percorso ai file di intestazione della libreria a Directory di inclusione.
  3. Nella pagina delle proprietà Input linker > aggiungere il nome del file LIB a Dipendenze aggiuntive.

Se la DLL viene compilata come parte della stessa soluzione dell'applicazione, seguire la stessa procedura di una libreria statica.

Se la DLL non fa parte della soluzione dell'applicazione, è necessario: il file DLL, le intestazioni con prototipi per le funzioni e le classi esportate e un file LIB che fornisce le informazioni di collegamento necessarie.

  1. Copiare la DLL nella cartella di output del progetto o in un'altra cartella nel percorso di ricerca standard di Windows per le DLL. Per altre informazioni, vedere Ordine di ricerca libreria a collegamento dinamico.
  2. Seguire i passaggi da 1 a 3 per le librerie statiche per fornire i percorsi alle intestazioni e al file LIB.

oggetti COM

Se l'applicazione C++ nativa deve utilizzare un oggetto COM e tale oggetto viene registrato, è necessario chiamare CoCreateInstance e passare il CLSID dell'oggetto. Il sistema lo troverà nel Registro di sistema di Windows e lo caricherà. Un progetto C++/CLI può utilizzare un oggetto COM nello stesso modo. In alternativa, può usarlo aggiungendo un riferimento all'elenco COM Aggiungi riferimenti > e utilizzandolo tramite il wrapper chiamabile runtime.

Assembly .NET e componenti Windows Runtime

Nei progetti UWP o C++/CLI si utilizzano assembly .NET o componenti Windows Runtime aggiungendo un riferimento all'assembly o al componente. Nel nodo Riferimenti in un progetto UWP o C++/CLI vengono visualizzati i riferimenti ai componenti di uso comune. Fare clic con il pulsante destro del mouse sul nodo Riferimenti in Esplora soluzioni per visualizzare Gestioneriferimenti ed esaminare i componenti disponibili nel sistema. Scegliere il pulsante Sfoglia per passare a qualsiasi cartella contenente un componente personalizzato. Poiché gli assembly .NET e i componenti Windows Runtime contengono informazioni sui tipi predefiniti, è possibile visualizzare i relativi metodi e classi facendo clic con il pulsante destro del mouse e scegliendo Visualizza in Visualizzatore oggetti.

Proprietà riferimento

Ogni tipo di riferimento ha delle proprietà. È possibile visualizzare le proprietà selezionando il riferimento in Esplora soluzioni e premendo Alt + Invio, oppure facendo clic con il pulsante destro del mouse e scegliendo Proprietà. Alcune proprietà sono di sola lettura e alcune sono modificabili. Tuttavia, in genere non è necessario modificare manualmente queste proprietà.

Proprietà dei riferimenti ActiveX

Le proprietà dei riferimenti ActiveX sono disponibili solo per i riferimenti ai componenti COM. Queste proprietà vengono visualizzate solo quando si seleziona un componente COM nel riquadro Riferimenti . Le proprietà non sono modificabili.

  • Percorso completo controllo

    Visualizza il percorso della directory del controllo a cui si fa riferimento.

  • GUID controllo

    Visualizza il GUID del controllo ActiveX.

  • Versione controllo

    Visualizza la versione del controllo ActiveX a cui si fa riferimento.

  • Nome libreria dei tipi

    Visualizza il nome della libreria dei tipi di riferimento.

  • Strumento Wrapper

    Visualizza lo strumento usato per compilare l'assembly di interoperabilità dalla libreria COM o dal controllo ActiveX a cui si fa riferimento.

Proprietà di riferimento dell'assembly (C++/CLI)

Le proprietà di riferimento agli assembly sono disponibili solo per i riferimenti agli assembly .NET Framework nei progetti C++/CLI. Queste proprietà vengono visualizzate solo quando si seleziona un assembly .NET Framework nel riquadro Riferimenti . Le proprietà non sono modificabili.

  • Percorso relativo

    Visualizza il percorso relativo della directory del progetto per l'assembly di riferimento.

Proprietà di compilazione

Sono disponibili le proprietà seguenti su vari tipi di riferimenti. Esse consentono di specificare la modalità di compilazione con riferimenti.

  • Copia localmente

    Specifica se copiare automaticamente l'assembly di riferimento nel percorso di destinazione durante una compilazione.

  • Copiare assembly satellite locali (C++/CLI)

    Specifica se copiare automaticamente gli assembly satellite dell'assembly di riferimento nel percorso di destinazione durante una compilazione. Usato solo se Copia localmente è impostato su true.

  • Output assembly di riferimento

    Specifica che questo assembly viene utilizzato nel processo di compilazione. Se true, l'assembly viene usato nella riga di comando del compilatore durante la compilazione.

Proprietà riferimento da progetto a progetto

Le proprietà seguenti definiscono un riferimento da progetto a progetto dal progetto selezionato nel riquadro Riferimenti a un altro progetto nella stessa soluzione. Per altre informazioni, vedere Gestione dei riferimenti in un progetto.

  • Collega dipendenze di libreria

    Quando questa proprietà è True, il sistema di progetto collega i file LIB prodotti dal progetto indipendente nel progetto dipendente. In genere, si specifica True.

  • Identificatore di progetto

    Identifica in modo univoco il progetto indipendente. Il valore della proprietà è un GUID di sistema interno che non è modificabile.

  • Usa input dipendenze di libreria

    Quando questa proprietà è False, il sistema di progetto non collegerà i file OBJ per la libreria che il progetto indipendente produce nel progetto dipendente. Ecco perché questo valore disabilita il collegamento incrementale. In genere, si specifica False perché la compilazione dell'applicazione può richiedere molto tempo se sono presenti molti progetti indipendenti.

Proprietà di riferimento di sola lettura (COM & .NET)

Le proprietà seguenti esistono nei riferimenti agli assembly COM e .NET e non sono modificabili.

  • Nome assembly

    Visualizza il nome dell'assembly per l'assembly di riferimento.

  • Impostazioni cultura

    Ottiene le impostazioni cultura del riferimento selezionato.

  • Descrizione

    Ottiene la descrizione del riferimento selezionato.

  • Percorso completo

    Visualizza il percorso della directory dell'assembly di riferimento.

  • Identità

    Per gli assembly .NET Framework, visualizza il percorso completo. Per i componenti COM, viene visualizzato il GUID.

  • Etichetta

    Visualizza l'etichetta del riferimento.

  • Nome

    Visualizza il nome del riferimento.

  • Token di chiave pubblica

    Visualizza il token di chiave pubblica usato per identificare l'assembly di riferimento.

  • Nome sicuro

    Impostato sutrue se il riferimento ha un nome sicuro. Un assembly con nome sicuro ha una versione univoca.

  • Versione

    Visualizza la versione dell'assembly di riferimento.

Vedi anche

Informazioni di riferimento sulla pagina delle proprietà del progetto C++
Impostare le proprietà del compilatore e di compilazione C++ in Visual Studio