Condividi tramite


Opzioni del compilatore e del linker (C++/CX)

Una variabile di ambiente, le opzioni del compilatore C++/CX e le opzioni del linker supportano la compilazione di app per Windows Runtime.

Percorso della libreria

La variabile di ambiente %LIBPATH% specifica il percorso predefinito in cui trovare i file con estensione winmd.

Opzioni del compilatore

Opzione Descrizione
/ZW

/ZW:nostdlib
Abilita le estensioni del linguaggio di Windows Runtime.

Il parametro nostdlib impedisce al compilatore di usare il percorso di ricerca predefinito standard per trovare i file WINMD e di assembly.

L'opzione del compilatore /ZW specifica in modo implicito le seguenti opzioni del compilatore:

- /FI vccorlib.h, che impone l'inclusione del file di intestazione vccorlib.h che definisce molti tipi richiesti dal compilatore.
- /FU Windows.winmd, che forza l'inclusione del file di metadati Windows.winmd fornito dal sistema operativo e definisce molti tipi in Windows Runtime.
- /FU Platform.winmd, che impone l'inclusione del file di metadati Platform.winmd che è fornito dal compilatore e che definisce la maggior parte dei tipi nella famiglia di spazi dei nomi Platform.
/AIdir Aggiunge una directory, specificata dal parametro dir , al percorso di ricerca usato dal compilatore per trovare i file WINMD e di assembly.
/FUfile Impone l'inclusione del file con estensione winmd o del modulo specificato. Questo significa che non è necessario specificare #usingfile nel codice sorgente. Il compilatore impone automaticamente l'inclusione del relativo file di metadati di Windows, Platform.winmd.
/D "WINAPI_FAMILY=2" Crea una definizione che consente l'uso di un subset di Win32 SDK compatibile con Windows Runtime.

Opzioni linker

Opzione Descrizione
/APPCONTAINER[:NO] Contrassegna il file eseguibile come eseguibile in appcontainer (solo).
/WINMD[:{NO|ONLY}] Genera un file WINMD e un file binario associato. Questa opzione deve essere passata al linker per l'emissione di un file WINMD.

NO: non emette un file WINMD, bensì un file binario.

ONLY: emette un file WINMD, ma non un file binario.
/WINMDFILE:filename Nome del file WINMD da emettere, anziché il nome file WINMD predefinito. Se sono specificati più nomi file nella riga di comando, viene usato l'ultimo nome.
/WINMDDELAYSIGN[:NO] Firma parzialmente il file WINMD e posiziona la chiave pubblica nel file binario.

NO: (impostazione predefinita) non firma il file WINMD.

/WINMDDELAYSIGN non ha alcun effetto a meno che non sia specificato anche /WINMDKEYFILE o /WINMDKEYCONTAINER.
/WINMDKEYCONTAINER:name Specifica un contenitore di chiavi per firmare un assembly. Il parametro name corrisponde al contenitore di chiavi usato per firmare il file di metadati.
/WINMDKEYFILE:filename Specifica una chiave o una coppia di chiavi per la firma dell'assembly. Il parametro filename corrisponde alla chiave usata per la firma del file di metadati.

Osservazioni:

Quando si usa /ZW, il compilatore collega automaticamente la versione DLL di C Runtime (CRT). Il collegamento alla versione della libreria statica non è consentito e qualsiasi uso di funzioni CRT non consentite in un'app piattaforma UWP (Universal Windows Platform) genererà un errore in fase di compilazione.

Vedi anche

Compilazione di app e librerie