Condividi tramite


DkmClrNcModuleInstance Classe

Definizione

'DkmClrNcModuleInstance' viene usato per i moduli gestiti compilati in codice nativo e incorporati all'interno di un modulo nativo. Come DkmClrModuleInstance, questi sono 1:1 con ICorDebugModule.

Questa API è stata introdotta in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

public ref class DkmClrNcModuleInstance : Microsoft::VisualStudio::Debugger::Clr::DkmClrModuleInstance
[System.Runtime.InteropServices.Guid("f85a173b-616b-91d3-319d-24cf9030c023")]
public class DkmClrNcModuleInstance : Microsoft.VisualStudio.Debugger.Clr.DkmClrModuleInstance
[<System.Runtime.InteropServices.Guid("f85a173b-616b-91d3-319d-24cf9030c023")>]
type DkmClrNcModuleInstance = class
    inherit DkmClrModuleInstance
Public Class DkmClrNcModuleInstance
Inherits DkmClrModuleInstance
Ereditarietà
Ereditarietà
Attributi

Proprietà

AppDomain

DkmClrAppDomain rappresenta un dominio dell'app CLR all'interno di un processo di cui viene eseguito il debug.

(Ereditato da DkmClrModuleInstance)
BaseAddress

[Facoltativo] Indirizzo di memoria iniziale di dove è stato caricato il modulo. Questo valore sarà zero se il modulo non è stato caricato in un blocco contiguo di memoria.

(Ereditato da DkmModuleInstance)
ClrFlags

Flag che indica i tratti di una DkmModuleInstance caricata da CLR.

(Ereditato da DkmClrModuleInstance)
Connection

Rappresenta una connessione tra il monitoraggio e l'IDE. Può essere una connessione locale se il monitoraggio è in esecuzione nello stesso processo dell'IDE oppure può essere una connessione remota. Nel processo di monitoraggio è presente una sola connessione.

(Ereditato da DkmModuleInstance)
ContainerModule

Istanza del modulo contenitore (fisica) incorporata in cui è integrato il modulo incorporato (virtuale).

Questa API è stata introdotta in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

Flags

Flag che indicano tratti di un DkmModuleInstance.

(Ereditato da DkmModuleInstance)
FullName

Nome completo del modulo. Per i moduli basati su file, si tratta del percorso completo del modulo (ad esempio: c:\windows\system32\kernel32.dll.

(Ereditato da DkmModuleInstance)
ILImageSize

Specifica le dimensioni dell'immagine IL di questo modulo, in quanto riguarda la ricerca del server di simboli. Per Desktop .NET Framework, verrà specificata la dimensione dell'immagine IL che differisce dalle dimensioni dell'immagine non elaborate nel caso di ngen. Questo perché l'unica immagine di IL è ciò che viene indicizzato nei server simboli. Per .NET Core ngen e pronto per l'esecuzione, verrà specificata la dimensione dell'immagine non elaborata come ngen/ready per l'esecuzione dell'immagine è ciò che viene indicizzato e non si vuole eseguire la ricerca in base alle dimensioni dell'unica immagine.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmClrModuleInstance)
Index

Identificatore per questo modulo incorporato all'interno del contenitore. Viene usato come prefisso per i nomi dei tipi nel modulo contenitore per indicare a quale modulo incorporato appartiene un tipo.

Questa API è stata introdotta in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

IsDisabled

Indica se questa istanza del modulo è stata disabilitata. I moduli disabilitati vengono in gran parte ignorati dal debugger. Per i moduli nativi, l'intervallo di indirizzi del modulo disabilitato viene considerato come se non venga eseguito il mapping. Per i moduli CLR, tutti i frame di questi moduli sono nascosti dallo stack di chiamate.

(Ereditato da DkmModuleInstance)
IsUnloaded

Restituisce true se viene generato un evento "non caricato" per questo oggetto (ad esempio: DkmThread::Unload viene chiamato) o se l'oggetto è stato chiuso. Si noti che è necessario usare attenzione quando si controlla questo stato come, senza sincronizzazione, lo stato restituito potrebbe non essere più accurato dopo la lettura.

(Ereditato da DkmDataContainer)
LoadContext

Descrizione stringa del contesto in cui è stato caricato questo modulo. ad esempio: 'Win32' o 'CLR v2.0.50727: Dominio predefinito'.

(Ereditato da DkmModuleInstance)
LoadOrder

Numero intero del numero di istanze del modulo caricate fino a e incluso questo modulo. Ogni istanza di runtime tiene traccia del proprio numero di ordini di carico.

(Ereditato da DkmModuleInstance)
MemoryLayout

Enumerazione che indica come viene disposto un modulo in memoria.

(Ereditato da DkmModuleInstance)
MinidumpInfoPart

[Facoltativo] 'MinidumpInfoPart' viene usato per trasmettere informazioni aggiuntive sui moduli in un DkmProcess per un minidump.

(Ereditato da DkmModuleInstance)
Module

[Facoltativo] Rappresentazione del gestore dei simboli di un modulo (DkmModule) associato a questa istanza del modulo. Questo valore è inizialmente Null e viene assegnato se e quando i simboli sono associati a questa istanza del modulo.

(Ereditato da DkmModuleInstance)
Mvid

Identificatore per questo modulo incorporato all'interno del processo.

Questa API è stata introdotta in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

Mvid

Identificatore della versione del modulo dal modulo caricato. Si tratta di un valore univoco incorporato in un file exe/dll da linker/compilatori quando viene compilata la dll/exe. Viene generato un nuovo valore ogni volta che viene compilata la dll/exe.

(Ereditato da DkmClrModuleInstance)
Name

Rappresentazione breve del nome del modulo. Per i moduli basati su file, si tratta del nome del file e dell'estensione (ad esempio: kernel32.dll).

(Ereditato da DkmModuleInstance)
Process

DkmProcess rappresenta un processo di destinazione in fase di debug. Il debugger esegue il debug dei processi, quindi si tratta dell'unità di base del debug. Un DkmProcess può rappresentare un processo di sistema o un processo virtuale, ad esempio minidump.

(Ereditato da DkmModuleInstance)
RuntimeInstance

Rappresenta un'istanza CLR compilata nativa in esecuzione in un processo di destinazione.

Questa API è stata introdotta in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

Size

[Facoltativo] Numero di byte nell'area di memoria del modulo. Questo valore sarà zero se il modulo non è stato caricato in un blocco contiguo di memoria.

(Ereditato da DkmModuleInstance)
SymbolFileId

[Facoltativo] Contiene informazioni necessarie per individuare i simboli per questo modulo. In Win32 queste informazioni sono contenute all'interno del IMAGE_DEBUG_DIRECTORY.

(Ereditato da DkmModuleInstance)
TagValue

DkmModuleInstance è una classe base astratta. Questa enumerazione indica quale classe derivata di questo oggetto è un'istanza di .

(Ereditato da DkmModuleInstance)
TimeDateStamp

Data/ora di creazione del modulo caricato. Questo valore viene ottenuto dalla IMAGE_NT_HEADERS del modulo caricato. L'unità di misura è un valore FILETIME, ovvero un valore a 64 bit che rappresenta il numero di intervalli di 100 nanosecondi dal 1° gennaio 1601 (UTC).

(Ereditato da DkmModuleInstance)
UniqueId

Identifica in modo univoco l'oggetto DkmModuleInstance.

(Ereditato da DkmModuleInstance)
Version

[Facoltativo] Informazioni sulla versione del file.

(Ereditato da DkmModuleInstance)

Metodi

CanDecompileMethod(DkmClrMethodId)

Fornisce informazioni su se il metodo specificato può essere decompilato o meno.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
CanDecompileModule(DkmDecompilerMode)

Fornisce informazioni su se il modulo può essere decompilato in una determinata modalità.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

(Ereditato da DkmClrModuleInstance)
ClearTransitionModuleFlag()

Le istanze di runtime chiamano questo metodo per contrassegnare un modulo come modulo di limite. Quando si esegue l'esecuzione, i runtime devono verificare se il passaggio ha raggiunto un modulo di limite e iniziare a eseguire l'arbitrato se hanno. Si noti che alcuni runtime potrebbero non essere in grado di rispettare questa richiesta. Il dispatcher mantiene il numero di volte in cui è stato chiamato FlagAsTransitionModule. Solo quando un numero corrispondente di chiamate a ClearTransitionModuleFlag non verrà più considerato un modulo di transizione.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmModuleInstance)
CreateInstructionAddressesFromILAddress(DkmWorkList, DkmClrMethodId, UInt32, DkmCompletionRoutine<DkmCreateInstructionAddressesFromILAddressAsyncResult>)

Crea uno o più DkmClrNcInstructionAddress da un token di metodo + offset IL. È possibile che siano presenti più indirizzi se l'offset DEL viene mappato a più blocchi di istruzione o se si tratta di un metodo generico e sono presenti più istanze.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Questa API è stata introdotta in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

Decompile()

Decompila il codice per un modulo in C# e crea un nuovo PDB portatile con questa origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

(Ereditato da DkmModuleInstance)
Decompile(DkmDecompilerMode, String, Int32)

Decompila il codice per un modulo in C# e crea un nuovo PDB portabile con questa origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire il valore HRESULT effettivo ed eventuali informazioni aggiuntive sugli errori tramite i parametri 'HR' e 'ErrorMessage'.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

(Ereditato da DkmClrModuleInstance)
Decompile(DkmWorkList, DkmCompletionRoutine<DkmDecompileAsyncResult>)

Decompila il codice per un modulo in C# e crea un nuovo PDB portatile con questa origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5).

(Ereditato da DkmModuleInstance)
Decompile(DkmWorkList, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

Decompila il codice per un modulo in C# e crea un nuovo PDB portatile con questa origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire le informazioni di errore effettive e eventuali informazioni aggiuntive sugli errori tramite i parametri "HR" e "ErrorMessage".

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

(Ereditato da DkmModuleInstance)
Decompile(DkmWorkList, DkmDecompilerMode, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

Decompila il codice per un modulo in C# e crea un nuovo PDB portabile con questa origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire il valore HRESULT effettivo ed eventuali informazioni aggiuntive sugli errori tramite i parametri 'HR' e 'ErrorMessage'.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

(Ereditato da DkmClrModuleInstance)
Decompile(String, Int32)

Decompila il codice per un modulo in C# e crea un nuovo PDB portatile con questa origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire le informazioni di errore effettive e eventuali informazioni aggiuntive sugli errori tramite i parametri "HR" e "ErrorMessage".

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

(Ereditato da DkmModuleInstance)
DecompileDocument(DkmWorkList, String, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

Decompila il codice per un documento in C# e aggiorna il file di simboli associato al modulo contenitore con le informazioni di debug necessarie e l'origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire il valore HRESULT effettivo ed eventuali informazioni aggiuntive sugli errori tramite i parametri 'HR' e 'ErrorMessage'.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
DecompileDocument(String, String, Int32)

Decompila il codice per un documento in C# e aggiorna il file di simboli associato al modulo contenitore con le informazioni di debug necessarie e l'origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire il valore HRESULT effettivo ed eventuali informazioni aggiuntive sugli errori tramite i parametri 'HR' e 'ErrorMessage'.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
DecompileMethods(DkmWorkList, ReadOnlyCollection<DkmClrMethodId>, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

Decompila il codice per i metodi in C# e aggiorna il file di simboli associato al modulo contenitore con le informazioni di debug necessarie e l'origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire il valore HRESULT effettivo ed eventuali informazioni aggiuntive sugli errori tramite i parametri 'HR' e 'ErrorMessage'.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
DecompileMethods(ReadOnlyCollection<DkmClrMethodId>, String, Int32)

Decompila il codice per i metodi in C# e aggiorna il file di simboli associato al modulo contenitore con le informazioni di debug necessarie e l'origine incorporata. Tutti i moduli che condividono questo file di simboli inizieranno a usare questi simboli aggiornati. Le implementazioni devono restituire S_OK in caso di errore e restituire il valore HRESULT effettivo ed eventuali informazioni aggiuntive sugli errori tramite i parametri 'HR' e 'ErrorMessage'.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
FlagAsTransitionModule()

Le istanze di runtime chiamano questo metodo per contrassegnare un modulo come modulo di limite. Quando si esegue l'esecuzione, i runtime devono verificare se il passaggio ha raggiunto un modulo di limite e iniziare a eseguire l'arbitrato se hanno. Si noti che alcuni runtime potrebbero non essere in grado di rispettare questa richiesta. Il dispatcher mantiene un conteggio del numero di volte in cui è stato chiamato. Solo quando è stato effettuato un numero corrispondente di chiamate a ClearTransitionModuleFlag, il modulo non sarà più considerato un modulo di transizione.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmModuleInstance)
GetAssemblyImageBytes(UInt32, UInt32)

Restituisce i byte dell'immagine a partire da una RVA specificata. Implementato dal provider di simboli per dm gestito.

Questa API è stata introdotta in Visual Studio 15 Update 6 (DkmApiVersion.VS15Update6).

GetBaselineMetaDataBytes()

Ottiene i byte di base dei metadati CLR da un determinato modulo.

Questa API è stata introdotta in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

(Ereditato da DkmClrModuleInstance)
GetBaselineMetaDataBytesPtr(UInt32)

Ottenere un puntatore ai byte di metadati non elaborati originali per il modulo specificato.

Vincolo di posizione: nessuno.

Questa API è stata introdotta in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

(Ereditato da DkmClrModuleInstance)
GetCorObject()

Fornisce l'accesso diretto all'oggetto ICorDebugModule, che gli analizzatori di espressioni o altri componenti possono usare per controllare il dominio dell'app.

L'interfaccia restituita può essere usata SOLO per controllare il processo di destinazione e non deve mai essere usata per controllare l'esecuzione (nessuna istruzione, nessun punto di interruzione, nessuna continuazione e così via). Questa operazione non è supportata e comporterà un comportamento non definito.

Vincolo location: l'API deve essere chiamata da un componente Monitor (livello < componente 100.000).

(Ereditato da DkmClrModuleInstance)
GetDataItem<T>()

Ottiene l'istanza di 'T' che è stata aggiunta a questa istanza del contenitore. Se questo contenitore non contiene un 'T', questa funzione restituirà Null.

(Ereditato da DkmDataContainer)
GetEncAvailability(String)

Controlla se Edit e Continue è supportato per l'istanza del modulo gestito corrispondente.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 16 Update 1 (DkmApiVersion.VS16Update1).

(Ereditato da DkmClrModuleInstance)
GetEncILDelta(Int32)

Responsabile dell'esecuzione di query sul delta IL associato a un'istanza del modulo CLR. Il delta IL è costituito dai byte risultanti da una modifica del codice, che potrebbe influire su diversi metodi. Questa operazione viene utilizzata da VIL quando si eseguono query su un metodo modificato all'interno di un modulo.

Vincolo location: l'API deve essere chiamata da un componente Monitor (livello < componente 100.000).

Questa API è stata introdotta in Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3).

(Ereditato da DkmClrModuleInstance)
GetGPUDisassembly(UInt64, UInt32, Boolean, Boolean)

Ottenere il disassembly dell'intervallo di indirizzi nell'istanza del modulo debug.

(Ereditato da DkmModuleInstance)
GetGPUDisassemblySize()

Restituisce le dimensioni del disassembly nell'istanza del modulo debug.

(Ereditato da DkmModuleInstance)
GetLocalSignatureToken(Int32)

Ottiene il token di firma per una firma di variabile locale in base a un token del metodo.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

(Ereditato da DkmClrModuleInstance)
GetMetaDataBytes()

Ottiene i byte dei metadati CLR da un determinato modulo. Questi byte possono quindi essere passati a IMetaDataDispenser::OpenScope per decodificare i metadati.

(Ereditato da DkmClrModuleInstance)
GetMetaDataBytesPtr(UInt32)

Ottenere un puntatore ai byte di metadati non elaborati per il modulo specificato.

NOTA: questo valore del puntatore non sarà valido se/quando il modulo è a) scaricato o b) modificato. Per rilevare questi scenari: a) Aggiungere un elemento di dati all'istanza del modulo. Il puntatore non sarà valido dopo la chiamata del metodo OnClose (quando l'istanza del modulo viene scaricata). b) Implementare IDkmClrModuleModifiedNotification.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

(Ereditato da DkmClrModuleInstance)
GetMetaDataFileInfo(Boolean, UInt32, UInt32)

Ottiene le informazioni necessarie per leggere i metadati direttamente da un file su disco.

Questa API è stata introdotta in Visual Studio 16 Update 2 (DkmApiVersion.VS16Update2).

(Ereditato da DkmClrModuleInstance)
GetMetaDataImport()

Ottiene i metadati CLR da un determinato modulo. Per altre informazioni sui metadati, vedere la documentazione di IMetaDataImport in MSDN.

NOTA: i chiamanti devono prestare molta attenzione quando si usa questa API dal codice gestito. L'implementazione IMetaDataImport può contenere un handle di file in un file di debug e l'handle di file verrà chiuso solo quando il conteggio dei riferimenti COM raggiunge zero. Deve quindi essere rilasciato manualmente (Marshal.IsComObject + Marshal.ReleaseComObject) invece di attendere che il GC rilevi che l'oggetto può essere rilasciato. Quando si esegue il test, assicurarsi che il file di debug abbia almeno 64 KB di metadati, perché il lettore di metadati non manterrà bloccato il file per la lettura quando si gestiscono file di piccole dimensioni.

(Ereditato da DkmClrModuleInstance)
GetMetadataStatus()

Ottenere lo stato dei metadati.

Vincolo location: l'API deve essere chiamata da un componente Monitor (livello < componente 100.000).

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmClrModuleInstance)
GetMethodTokens(DkmWorkList, String, String, DkmCompletionRoutine<DkmGetMethodTokensAsyncResult>)

Fornisce un meccanismo per ottenere i token di metadati per un metodo assegnato a una classe. Equivale a IMetaDataImport::EnumMethodsWithName.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

(Ereditato da DkmClrModuleInstance)
GetMethodTokens(String, String, Int32[])

Fornisce un meccanismo per ottenere i token di metadati per un metodo assegnato a una classe. Equivale a IMetaDataImport::EnumMethodsWithName.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

(Ereditato da DkmClrModuleInstance)
GetNextGPUInstructionAddress(UInt64)

Restituisce l'indirizzo dell'istruzione successiva rispetto a un indirizzo iniziale.

(Ereditato da DkmModuleInstance)
GetSymbolLoadInformation()

Restituisce una stringa che descrive i vari percorsi in cui sono stati cercati i simboli e il risultato del controllo della posizione. Queste informazioni vengono usate per popolare le informazioni di caricamento dei simboli nella finestra moduli.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

(Ereditato da DkmModuleInstance)
GetSymbolSearchResult()

Recupera i risultati della ricerca dei simboli associati a questa istanza del modulo.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

(Ereditato da DkmModuleInstance)
GetSymbolSearchResult(DkmWorkList, DkmCompletionRoutine<DkmGetSymbolSearchResultAsyncResult>)

Recupera i risultati della ricerca dei simboli associati a questa istanza del modulo.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3).

(Ereditato da DkmModuleInstance)
GetSymbolStatusMessage(Boolean)

Ottenere una descrizione della stringa localizzata dello stato del simbolo corrente.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

(Ereditato da DkmModuleInstance)
GetSymbolStatusMessage(DkmWorkList, Boolean, DkmCompletionRoutine<DkmGetSymbolStatusMessageAsyncResult>)

Ottenere una descrizione della stringa localizzata dello stato del simbolo corrente.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

(Ereditato da DkmModuleInstance)
GetSymUnmanagedReader()

Questa API fornisce un'implementazione parziale di ISymUnmanagedReader2 per un modulo CLR.

Vincolo location: fornisce un'implementazione parziale di ISymUnmanagedReader2 a entrambi i lati della connessione remota.

Questa API è stata introdotta in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

(Ereditato da DkmClrModuleInstance)
GetTypeIdForTypeName(String)

Restituisce l'ID di tipo per un nome di tipo specificato.

Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

(Ereditato da DkmClrModuleInstance)
InterpretManagedMethod(DkmClrMethodId, ReadOnlyCollection<DkmClrType>, ReadOnlyCollection<DkmClrType>, DkmILInterpreterValue, ReadOnlyCollection<DkmILInterpreterValue>, Int32, DkmILInterpreterOptions, String)

Simula l'esecuzione di un metodo in un oggetto interpretando il codice MSIL del metodo. Il risultato del metodo verrà restituito al chiamante. Tuttavia, a differenza di una valutazione della funzione, in cui il metodo è effettivamente in esecuzione nella destinazione, l'interpretazione di un metodo non esegue effettivamente il metodo, ma simula semplicemente il comportamento del metodo. Poiché il metodo non viene mai eseguito in realtà, tutti gli effetti collaterali risultanti dall'esecuzione del metodo vengono eliminati dopo il completamento dell'interpretazione del metodo, lasciando il processo di destinazione in uno stato identico a quello da prima della chiamata.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmClrModuleInstance)
IsSuppressed()

Questo metodo consente a un componente di determinare se l'evento di caricamento del modulo per un modulo è stato eliminato.

Questa API è stata introdotta in Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3).

(Ereditato da DkmModuleInstance)
IsTransitionModule()

Restituisce true se un'istanza di runtime ha contrassegnato questo modulo come modulo di transizione.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmModuleInstance)
IsUserCode()

Determina se un modulo è considerato codice utente.

Vincolo location: questo metodo può essere chiamato da un componente IDE. A partire da Visual Studio 2013 Update 2, è anche possibile chiamare questa operazione da un componente di monitoraggio per il codice gestito. Da Visual Studio 2017 Update 8, la CallDirection dell'API è stata creata "Bidirezionale" da "Normal" e ora può essere chiamata da qualsiasi componente, AsyncCaller è stata impostata su 'true' e callerLocationConstraint è stato impostato su 'None' da 'NoMarshalling'.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmModuleInstance)
IsUserCode(DkmWorkList, DkmCompletionRoutine<DkmModuleInstanceIsUserCodeAsyncResult>)

Determina se un modulo è considerato codice utente.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo location: questo metodo può essere chiamato da un componente IDE. A partire da Visual Studio 2013 Update 2, è anche possibile chiamare questa operazione da un componente di monitoraggio per il codice gestito. Da Visual Studio 2017 Update 8, la CallDirection dell'API è stata creata "Bidirezionale" da "Normal" e ora può essere chiamata da qualsiasi componente, AsyncCaller è stata impostata su 'true' e callerLocationConstraint è stato impostato su 'None' da 'NoMarshalling'.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmModuleInstance)
OnBinaryLoaded(String)

Generare un evento BinaryLoaded. I componenti che implementano l'interfaccia del sink di eventi riceveranno la notifica dell'evento. Il controllo restituirà una volta che tutti i componenti sono stati notificati.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmModuleInstance)
OnBinaryReloadOpportunity()

Generare un evento BinaryReloadOpportunity. I componenti che implementano l'interfaccia del sink di eventi riceveranno la notifica dell'evento. Il controllo restituirà una volta che tutti i componenti sono stati notificati.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2).

(Ereditato da DkmModuleInstance)
OnModuleModified()

Questo metodo viene chiamato quando un modulo viene modificato a causa di Codice EnC o generato dinamicamente.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

(Ereditato da DkmModuleInstance)
OnSymbolsLoaded(DkmModule, Boolean)

Questo metodo viene richiamato dai monitoraggi di debug di base in risposta a una chiamata a IDkmModuleSymbolsLoaded.RaiseSymbolsLoadedEvent. Questo metodo deve essere richiamato dal thread evento o dal thread di richiesta come parte di un ricaricamento. I monitoraggi di debug di base devono passare in modo sincrono al thread dell'evento, sospendere il processo di destinazione e richiamare OnSymbolsLoaded.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmModuleInstance)
OnSymbolsUpdated(DkmModule)

Generare un evento ModuleSymbolsUpdated. I componenti che implementano l'interfaccia del sink di eventi riceveranno la notifica dell'evento. Il controllo restituirà una volta che tutti i componenti sono stati notificati.

(Ereditato da DkmModuleInstance)
ReadSymbols()

Questo metodo viene richiamato dai gestori di simboli per leggere i simboli per DkmModuleInstances i cui simboli risiedono nella memoria del debug.

(Ereditato da DkmModuleInstance)
RemoveDataItem<T>()

Rimuovere l'istanza di 'T' da questo contenitore. In genere non è necessario chiamare questo metodo come contenitore di dati verrà svuotato automaticamente quando l'oggetto viene chiuso.

(Ereditato da DkmDataContainer)
ResolveMappingMetadataTypeRefToken(Int32, String, Int32)

Risolvere un token.

Questa API è stata introdotta in Visual Studio 15 Update 8 (DkmApiVersion.VS15Update8).

ResolveTypeName(String, ReadOnlyCollection<DkmClrType>)

Risolve un nome di tipo in un tipo. Se il tipo è generico, non verrà creata un'istanza dei parametri generici.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmClrModuleInstance)
SetDataItem<T>(DkmDataCreationDisposition, T)

Inserire un nuovo elemento nel contenitore dati.

(Ereditato da DkmDataContainer)
SetDisabled(Boolean)

Aggiornamenti lo stato disabilitato in un modulo. Questo metodo può essere chiamato solo da un evento ModuleInstanceLoad. Quando si disabilita un modulo, è comune eliminare anche l'evento di caricamento del modulo.

(Ereditato da DkmModuleInstance)
SetModule(DkmModule, Boolean)

Questo metodo viene richiamato da un provider di simboli per associare un DkmModule a DkmModuleInstance e per attivare un evento ModuleSymbolsLoaded. Può essere chiamato una sola volta per un oggetto DkmModuleInstance. La chiamata a questa API stabilirà entrambe l'associazione DkmModule-DkmModuleInstance<> e causerà la generazione di un evento ModuleSymbolsLoaded.

(Ereditato da DkmModuleInstance)
TryLoadBinary()

Tentativo di caricare un file binario che in precedenza non è riuscito a caricare usando i percorsi dei simboli aggiornati.

(Ereditato da DkmModuleInstance)
TryLoadBinary(DkmWorkList, DkmCompletionRoutine<DkmTryLoadBinaryAsyncResult>)

Tentativo di caricare un file binario che in precedenza non è riuscito a caricare usando i percorsi dei simboli aggiornati.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

(Ereditato da DkmModuleInstance)
TryLoadDecompiledSymbols()

Tenta di caricare simboli decompilati memorizzati nella cache per il modulo.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
TryLoadDecompiledSymbols(DkmWorkList, DkmCompletionRoutine<DkmTryLoadDecompiledSymbolsAsyncResult>)

Tenta di caricare simboli decompilati memorizzati nella cache per il modulo.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

(Ereditato da DkmClrModuleInstance)
TryLoadSymbols()

Chiamato per avviare il caricamento dei simboli per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

(Ereditato da DkmModuleInstance)
TryLoadSymbols(DkmSymbolLoadFlags)

Chiamato per avviare il caricamento dei simboli per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

(Ereditato da DkmModuleInstance)
TryLoadSymbols(DkmWorkList, DkmCompletionRoutine<DkmTryLoadSymbolsAsyncResult>)

Chiamato per avviare il caricamento dei simboli per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

(Ereditato da DkmModuleInstance)
TryLoadSymbols(DkmWorkList, DkmSymbolLoadFlags, DkmCompletionRoutine<DkmTryLoadSymbolsAsyncResult>)

Chiamato per avviare il caricamento dei simboli per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo location: l'API deve essere chiamata da un componente IDE (livello > componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

(Ereditato da DkmModuleInstance)
TryLoadSymbolsCallback()

Chiamato per avviare il caricamento dei simboli per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Vincolo di percorso: può essere chiamato dal client o dal server. L'implementazione del server è una cache per evitare chiamate di rete non necessarie. Il client passa direttamente all'implementazione "reale", che garantisce anche che i riavvii vengano restituiti in anticipo.

Questa API è stata introdotta in Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

(Ereditato da DkmModuleInstance)
TryLoadSymbolsCallback(DkmWorkList, DkmCompletionRoutine<DkmTryLoadSymbolsCallbackAsyncResult>)

Chiamato per avviare il caricamento dei simboli per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo di percorso: può essere chiamato dal client o dal server. L'implementazione del server è una cache per evitare chiamate di rete non necessarie. Il client passa direttamente all'implementazione "reale", che garantisce anche che i riavvii vengano restituiti in anticipo.

Questa API è stata introdotta in Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

(Ereditato da DkmModuleInstance)
TryLoadSymbolsCallback177(DkmSymbolLoadFlags)

Chiamato per avviare il caricamento dei simboli presenti localmente per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Vincolo di percorso: può essere chiamato dal client o dal server. L'implementazione del server è una cache per evitare chiamate di rete non necessarie. Il client passa direttamente all'implementazione "reale", che garantisce anche che i riavvii vengano restituiti in anticipo.

Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

(Ereditato da DkmModuleInstance)
TryLoadSymbolsCallback177(DkmWorkList, DkmSymbolLoadFlags, DkmCompletionRoutine<DkmTryLoadSymbolsCallback177AsyncResult>)

Chiamato per avviare il caricamento dei simboli presenti localmente per DkmModuleInstances i cui simboli non sono stati trovati al caricamento del modulo.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta accodato l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo di percorso: può essere chiamato dal client o dal server. L'implementazione del server è una cache per evitare chiamate di rete non necessarie. Il client passa direttamente all'implementazione "reale", che garantisce anche che i riavvii vengano restituiti in anticipo.

Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

(Ereditato da DkmModuleInstance)
TryResolveToken(DkmStackWalkFrame, Int32, DkmClrType, Int32)

Tenta di risolvere un token dall'ambito di questo modulo alla definizione del modulo.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

(Ereditato da DkmClrModuleInstance)
Unload()

Contrassegnare l'oggetto Unload come componenti scaricati e notificare i componenti che implementano l'interfaccia sink di eventi. Il controllo restituirà una volta che tutti i componenti sono stati informati.

Questo metodo può essere chiamato solo dal componente che ha creato l'oggetto .

(Ereditato da DkmModuleInstance)

Si applica a