Share via


DkmClrModuleInstance Classe

Definizione

'DkmClrModuleInstance' viene usato per i moduli caricati in Common Language Runtime.

Classi derivate: DkmClrNcModuleInstance

public ref class DkmClrModuleInstance : Microsoft::VisualStudio::Debugger::DkmModuleInstance
[System.Runtime.InteropServices.Guid("29da4ffa-6063-6232-46dd-64d14cf56ddf")]
public class DkmClrModuleInstance : Microsoft.VisualStudio.Debugger.DkmModuleInstance
[<System.Runtime.InteropServices.Guid("29da4ffa-6063-6232-46dd-64d14cf56ddf")>]
type DkmClrModuleInstance = class
    inherit DkmModuleInstance
Public Class DkmClrModuleInstance
Inherits DkmModuleInstance
Ereditarietà
Ereditarietà
Derivato
Attributi

Proprietà

AppDomain

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

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.

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)
Flags

Flag che indicano tratti di una 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).

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 fosse mappato. 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 il 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 conteggio degli 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 di 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 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.

Name

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

(Ereditato da DkmModuleInstance)
Process

DkmProcess rappresenta un processo di destinazione di cui viene eseguito il 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 in esecuzione in un processo di destinazione.

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).

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).

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)
Create(String, String, UInt64, DkmModuleVersion, DkmSymbolFileId, DkmModuleFlags, DkmModuleMemoryLayout, UInt64, UInt32, UInt32, String, DkmClrRuntimeInstance, Guid, DkmClrModuleFlags, DkmClrAppDomain, Boolean, DkmModule, DkmModuleInstance+MinidumpInfo, DkmDataItem)

Create una nuova istanza dell'oggetto DkmClrModuleInstance.

Questo metodo invierà un evento ModuleInstanceLoad.

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

Create(String, String, UInt64, DkmModuleVersion, DkmSymbolFileId, DkmModuleFlags, DkmModuleMemoryLayout, UInt64, UInt32, UInt32, String, DkmClrRuntimeInstance, Guid, DkmClrModuleFlags, DkmClrAppDomain, UInt32, Boolean, DkmModule, DkmModuleInstance+MinidumpInfo, DkmDataItem)

Create una nuova istanza dell'oggetto DkmClrModuleInstance.

Questo metodo invierà un evento ModuleInstanceLoad.

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).

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).

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).

Decompile(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 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).

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).

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).

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).

FlagAsTransitionModule()

Le istanze di runtime chiamano questo metodo per contrassegnare un modulo come modulo limite. Quando si esegue l'istruzione, i runtime devono verificare se il passaggio ha raggiunto un modulo limite e avviare l'arbitraggio delle istruzioni, se disponibili. Si noti che alcuni runtime potrebbero non essere in grado di rispettare questa richiesta. Il dispatcher manterrà un conteggio del numero di chiamate. Solo quando è stato effettuato un numero corrispondente di chiamate a ClearTransitionModuleFlag, il modulo non verrà più considerato un modulo di transizione.

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

(Ereditato da DkmModuleInstance)
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).

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).

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).

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).

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).

GetGPUDisassembly(UInt64, UInt32, Boolean, Boolean)

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

(Ereditato da DkmModuleInstance)
GetGPUDisassemblySize()

Restituisce le dimensioni del disassembly nell'istanza del modulo di 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).

GetMetaDataBytes()

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

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).

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).

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.

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).

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).

GetMethodTokens(String, String, Int32[])

Fornisce un meccanismo per ottenere i token di metadati per un metodo specificato in una classe. Equivalente a IMetaDataImport::EnumMethodsWithName.

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

GetNextGPUInstructionAddress(UInt64)

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

(Ereditato da DkmModuleInstance)
GetSymbolLoadInformation()

Restituisce una stringa che descrive le varie posizioni 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 dei moduli.

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

(Ereditato da DkmModuleInstance)
GetSymbolSearchResult()

Recupera tutti i risultati della ricerca di simboli associati a questa istanza 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 3 (DkmApiVersion.VS17Update3).

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

Recupera tutti i risultati della ricerca di simboli associati a questa istanza 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 3 (DkmApiVersion.VS17Update3).

(Ereditato da DkmModuleInstance)
GetSymbolStatusMessage(Boolean)

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

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

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

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

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)
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).

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).

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).

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 location: l'API deve essere chiamata da un componente Monitor (livello < 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 chiamarlo da un componente di monitoraggio per il codice gestito. Da Visual Studio 2017 Update 8, il CallDirection dell'API è stato reso 'Bidirezionale' da 'Normal' e ora può essere chiamato da qualsiasi componente, AsyncCaller è stato impostato 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 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: questo metodo può essere chiamato da un componente IDE. A partire da Visual Studio 2013 Update 2, è anche possibile chiamarlo da un componente di monitoraggio per il codice gestito. Da Visual Studio 2017 Update 8, il CallDirection dell'API è stato reso 'Bidirezionale' da 'Normal' e ora può essere chiamato da qualsiasi componente, AsyncCaller è stato impostato 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 sink di eventi riceveranno la notifica degli eventi. Il controllo restituirà una volta che tutti i componenti sono stati informati.

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 sink di eventi riceveranno la notifica degli eventi. Il controllo restituirà una volta che tutti i componenti sono stati informati.

Vincolo location: l'API deve essere chiamata da un componente Monitor (livello < 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 EnC o di codice generato in modo dinamico.

Vincolo location: l'API deve essere chiamata da un componente Monitor (livello < 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 dell'evento o dal thread della 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 location: l'API deve essere chiamata da un componente Monitor (livello < componente 100.000).

(Ereditato da DkmModuleInstance)
OnSymbolsUpdated(DkmModule)

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

(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)
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).

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).

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).

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).

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