/JMC
(Debug just my code)
Specifica il supporto del compilatore per il debug nativo just my code nel debugger di Visual Studio. Questa opzione supporta le impostazioni utente che consentono a Visual Studio di eseguire il passaggio su sistema, framework, libreria e altre chiamate non utente e comprimere tali chiamate nella finestra dello stack di chiamate. L'opzione /JMC
del compilatore è disponibile a partire da Visual Studio 2017 versione 15.8.
Sintassi
/JMC
[-
]
Osservazioni:
Le impostazioni Just My Code di Visual Studio specificano se il debugger di Visual Studio esegue passaggi su sistema, framework, libreria e altre chiamate non utente. L'opzione /JMC
del compilatore abilita il supporto per il debug Just My Code nel codice C++ nativo. Quando /JMC
è abilitato, il compilatore inserisce le chiamate a una funzione helper, __CheckForDebuggerJustMyCode
, nel prologo della funzione. La funzione helper fornisce hook che supportano le operazioni di passaggio Just My Code del debugger di Visual Studio. Per abilitare Just My Code nel debugger di Visual Studio, nella barra dei menu scegliere Opzioni strumenti>e quindi impostare l'opzione in Debug>generale>Abilita Just My Code.
L'opzione /JMC
richiede che il codice sia collegato alla libreria C Runtime (CRT), che fornisce la __CheckForDebuggerJustMyCode
funzione helper. Se il progetto non è collegato a CRT, è possibile che venga visualizzato l'errore del linker LNK2019: simbolo esterno non risolto __CheckForDebuggerJustMyCode. Per risolvere l'errore, collegarsi a CRT o disabilitare l'opzione /JMC
.
Quando l'opzione /JMC
è abilitata, il file PDB viene annotato con informazioni aggiuntive sul numero di riga. Nelle versioni precedenti a Visual Studio 2019 versione 16.8, queste informazioni possono essere visualizzate nei report di code coverage come si verificano nella riga 15732480 (0xF00F00) o 16707566 (0xFEEFEE). Questi numeri di riga fittizi vengono usati come marcatori per delineare il codice utente dal codice non utente. Per includere codice non utente nei report di code coverage senza questi numeri di riga imprevisti, compilare il codice con l'opzione /JMC-
.
Per impostazione predefinita, l'opzione del /JMC
compilatore è disattivata. Tuttavia, a partire da Visual Studio 2017 versione 15.8 questa opzione è abilitata nella maggior parte dei modelli di progetto di Visual Studio. Per disabilitare in modo esplicito questa opzione, usare l'opzione /JMC-
nella riga di comando. In Visual Studio aprire la finestra di dialogo Pagine delle proprietà del progetto e modificare la proprietà Support Just My Code Debugging nella pagina delle proprietà Proprietà>di configurazione C/C++>Generale su No.
Per altre informazioni, vedere C++ Just My Code in Specificare se eseguire il debug solo del codice utente usando Just My Code in Visual Studio e il post di blog del team di Visual C++ Annuncio di C++ Just My Code Stepping in Visual Studio.
Per impostare l'opzione del compilatore nell'ambiente di sviluppo di Visual Studio
Aprire la finestra di dialogo Pagine delle proprietà del progetto. Per informazioni dettagliate, vedere Impostare il compilatore e le proprietà di compilazione.
Selezionare la pagina delle proprietà Proprietà>di configurazione C/C++>Generale.
Modificare la proprietà Support Just My Code Debugging .
Per impostare l'opzione del compilatore a livello di codice
- Vedere AdditionalOptions.
Vedi anche
Opzioni del compilatore MSVC
Sintassi della riga di comando del compilatore MSVC