共用方式為


DkmClrModuleInstance 類別

定義

'DkmClrModuleInstance' 用於載入 Common Language Runtime 的模組。

衍生類別: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
繼承
繼承
衍生
屬性

屬性

AppDomain

DkmClrAppDomain 代表正在偵錯的進程內的CLR應用程式域。

BaseAddress

[選擇性]模組載入所在位置的起始記憶體位址。 如果模組未在連續記憶體區塊中載入,這個值將會是零。

(繼承來源 DkmModuleInstance)
ClrFlags

旗標,表示 CLR 已載入之 DkmModuleInstance 的特性。

Connection

這代表監視器與 IDE 之間的連線。 如果監視器在與 IDE 相同的進程中執行,則它可以是本機連線,也可以是遠端連線。 在監視程式中,只有一個連線。

(繼承來源 DkmModuleInstance)
Flags

指出 DkmModuleInstance 特性的旗標。

(繼承來源 DkmModuleInstance)
FullName

完整模組名稱。 對於檔案型模組,這是模組的完整路徑 (,例如:c:\windows\system32\kernel32.dll。

(繼承來源 DkmModuleInstance)
ILImageSize

指定此課程模組的 IL 影像大小,因為它與符號伺服器查閱有關。 若為 Desktop .NET Framework,這會指定 IL 映射大小,在 ngen 的情況下,會與原始映射大小不同。 這是因為 IL 唯一映像是在符號伺服器上編製索引的影像。 針對 .NET Core ngen 並準備好執行,這會將原始映射大小指定為 ngen/ready to run image 是編製索引的內容,我們不想根據 IL 僅根據映射大小執行查閱。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 中引進。

IsDisabled

指出是否已停用此模組實例。 調試程式會忽略已停用的模組。 針對原生模組,已停用模組的位址範圍會視為未對應。 針對 CLR 模組,這些模組中的任何框架會隱藏在呼叫堆疊中。

(繼承來源 DkmModuleInstance)
IsUnloaded

如果已針對這個對象引發 'unloaded' 事件, (範例:DkmThread::Unload 呼叫) 或對象已關閉,則傳回 true。 請注意,檢查此狀態時,請務必小心,而不需同步處理,傳回的狀態在讀取之後可能無法再精確指示。

(繼承來源 DkmDataContainer)
LoadContext

載入此課程模組之內容的字串描述。 例如:'Win32' 或 'CLR v2.0.50727:預設網域'。

(繼承來源 DkmModuleInstance)
LoadOrder

已載入至並包含此模組之模組實例數目的整數計數。 每個運行時間實例都會持續追蹤其本身的負載順序計數。

(繼承來源 DkmModuleInstance)
MemoryLayout

列舉,指出模組如何在記憶體中配置。

(繼承來源 DkmModuleInstance)
MinidumpInfoPart

[選擇性]'MinidumpInfoPart' 可用來傳達迷你傾印 DkmProcess 中模組的其他資訊。

(繼承來源 DkmModuleInstance)
Module

[選擇性]符號處理程式的模組表示法 (DkmModule) 與此模組實例相關聯。 這個值一開始為 Null,而且會在符號與這個模組實例相關聯時指派。

(繼承來源 DkmModuleInstance)
Mvid

來自已載入模組的模組版本標識碼。 這是唯一值,當建置 dll/exe 時,鏈接器/編譯程式會內嵌在 exe/dll 中。 每次編譯 dll/exe 時,都會產生新的值。

Name

模組名稱的簡短表示法。 針對以檔案為基礎的模組,這是檔名和擴展名 (例如:kernel32.dll) 。

(繼承來源 DkmModuleInstance)
Process

DkmProcess 代表正在偵錯的目標進程。 調試程式會偵錯進程,因此這是偵錯的基本單位。 DkmProcess 可以代表系統進程或虛擬進程,例如minidumps。

(繼承來源 DkmModuleInstance)
RuntimeInstance

表示在目標進程中執行的CLR實例。

Size

[選擇性]模組記憶體區域中的位元元組數目。 如果模組未在連續記憶體區塊中載入,這個值將會是零。

(繼承來源 DkmModuleInstance)
SymbolFileId

[選擇性]包含尋找此課程模組符號所需的資訊。 在 Win32 上,此資訊包含在IMAGE_DEBUG_DIRECTORY內。

(繼承來源 DkmModuleInstance)
TagValue

DkmModuleInstance 是抽象基類。 這個列舉表示這個對像是實例的衍生類別。

(繼承來源 DkmModuleInstance)
TimeDateStamp

建置載入模組的日期/時間。 此值是從載入模組IMAGE_NT_HEADERS取得。 度量單位是 FILETIME 值,這是 64 位值,代表自 1601 年 1 月 1 日起的 100 奈秒間隔數目 (UTC) 。

(繼承來源 DkmModuleInstance)
UniqueId

唯一識別 DkmModuleInstance 物件。

(繼承來源 DkmModuleInstance)
Version

[選擇性]檔案版本資訊。

(繼承來源 DkmModuleInstance)

方法

CanDecompileMethod(DkmClrMethodId)

提供是否可以反編譯指定方法的相關信息。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

CanDecompileModule(DkmDecompilerMode)

提供模組是否可以在給定模式中反編譯的資訊。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) 中引進。

ClearTransitionModuleFlag()

運行時間實例會呼叫這個方法,將模組標示為界限模組。 逐步執行時,運行時間應該檢查該步驟是否已達到界限模組,並開始執行仲裁。 請注意,某些運行時間可能無法接受此要求。 發送器會保留呼叫 FlagAsTransitionModule 的次數。 只有當對 ClearTransitionModuleFlag 的呼叫數目相符時,模組就不會再被視為轉換模組。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

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

Create 新的 DkmClrModuleInstance 物件實例。

這個方法會傳送ModuleInstanceLoad事件。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 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 新的 DkmClrModuleInstance 物件實例。

這個方法會傳送ModuleInstanceLoad事件。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 中引進。

Decompile()

將模組的程式代碼分解成 C#,並使用此內嵌來源建立新的可攜式 PDB。 共用此符號檔的所有模組都會開始使用這些更新的符號。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) 中引進。

(繼承來源 DkmModuleInstance)
Decompile(DkmDecompilerMode, String, Int32)

將模組的程式代碼分解成 C#,並使用此內嵌來源建立新的可攜式 PDB。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) 中引進。

Decompile(DkmWorkList, DkmCompletionRoutine<DkmDecompileAsyncResult>)

將模組的程式代碼分解成 C#,並使用此內嵌來源建立新的可攜式 PDB。 共用此符號檔的所有模組都會開始使用這些更新的符號。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 16 Update 5 (DkmApiVersion.VS16Update5) 中引進。

(繼承來源 DkmModuleInstance)
Decompile(DkmWorkList, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

將模組的程式代碼分解成 C#,並使用此內嵌來源建立新的可攜式 PDB。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) 引進。

(繼承來源 DkmModuleInstance)
Decompile(DkmWorkList, DkmDecompilerMode, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

將模組的程式代碼分解成 C#,並使用此內嵌來源建立新的可攜式 PDB。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) 中引進。

Decompile(String, Int32)

將模組的程式代碼分解為 C#,並使用這個來源內嵌建立新的可攜式 PDB。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) 中引進。

(繼承來源 DkmModuleInstance)
DecompileDocument(DkmWorkList, String, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

將文件的程式代碼分解成 C#,並使用必要的偵錯資訊和內嵌來源,更新與包含模塊相關聯的符號檔。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

DecompileDocument(String, String, Int32)

將文件的程式代碼分解成 C#,並使用必要的偵錯資訊和內嵌來源,更新與包含模塊相關聯的符號檔。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

DecompileMethods(DkmWorkList, ReadOnlyCollection<DkmClrMethodId>, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

將方法的程式代碼分解成 C#,並使用必要的偵錯資訊和內嵌來源,更新與包含模塊相關聯的符號檔。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

DecompileMethods(ReadOnlyCollection<DkmClrMethodId>, String, Int32)

將方法的程式代碼分解成 C#,並使用必要的偵錯資訊和內嵌來源,更新與包含模塊相關聯的符號檔。 共用此符號檔的所有模組都會開始使用這些更新的符號。 實作應該在失敗時傳回S_OK,並透過 『HR』 和 『ErrorMessage』 參數傳回實際的 HRESULT 和任何其他錯誤資訊。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

FlagAsTransitionModule()

運行時間實例會呼叫這個方法,將模組標示為界限模組。 逐步執行時,運行時間應該檢查步驟是否已達到界限模組,並開始執行仲裁。 請注意,某些運行時間可能無法接受此要求。 發送器會保留呼叫此呼叫次數的計數。 只有在已對 ClearTransitionModuleFlag 進行相符的呼叫數目時,模組才會被視為轉換模組。

位置條件約束:必須從監視器元件 (元件層級 < 100,000) 呼叫 API。

(繼承來源 DkmModuleInstance)
GetBaselineMetaDataBytes()

從指定的模組取得 CLR 元數據的基準位元組。

此 API 是在 Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) 引進。

GetBaselineMetaDataBytesPtr(UInt32)

取得指定模組原始原始元數據位元組的指標。

位置條件約束:無。

此 API 是在 Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5) 引進。

GetCorObject()

提供 ICorDebugModule 物件的直接存取權,該物件表示式評估工具或其他元件可用來檢查應用程式域。

傳回的介面只能用來檢查目標進程,而且絕對不應該用來控制執行, (沒有逐步執行、沒有斷點、沒有繼續等等) 。 不支援這麼做,而且會導致未定義的行為。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

GetDataItem<T>()

取得已新增至這個容器實例的 『T』 實例。 如果此容器不包含 『T』,此函式會傳回 null。

(繼承來源 DkmDataContainer)
GetEncAvailability(String)

檢查對應的受控模組實例是否支援 [編輯後繼續]。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 16 Update 1 (DkmApiVersion.VS16Update1) 引進。

GetEncILDelta(Int32)

負責查詢與 CLR 模組實例相關聯的 IL 差異。 IL 差異是程式代碼變更所產生的位元元組,可能會影響數個方法。 在查詢模組內已修改方法的相關信息時,VIL 會使用此方式。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

此 API 是在 Visual Studio 16 Update 3 (DkmApiVersion.VS16Update3) 引進。

GetGPUDisassembly(UInt64, UInt32, Boolean, Boolean)

取得偵錯模組實例中位址範圍的反組譯碼。

(繼承來源 DkmModuleInstance)
GetGPUDisassemblySize()

傳回偵錯模組實例中的反組譯碼大小。

(繼承來源 DkmModuleInstance)
GetLocalSignatureToken(Int32)

取得指定方法令牌之局部變數簽章的簽章令牌。

此 API 是在 Visual Studio 14 RTM (DkmApiVersion.VS14RTM) 中引進。

GetMetaDataBytes()

從指定的模組取得 CLR 元數據的位元組。 這些位元組接著可以傳遞至 IMetaDataDispenser::OpenScope 以譯碼元數據。

GetMetaDataBytesPtr(UInt32)

取得指定模組之原始元數據位元組的指標。

注意:如果模組) 卸除或 b) 修改,此指標值將會變成無效。 若要偵測這些案例:) 將數據項新增至模組實例。 當模組實例卸除 () 時,在呼叫 OnClose 方法之後,指標將會無效。 b) 實作 IDkmClrModuleModifiedNotification。

此 API 是在 Visual Studio 14 RTM (DkmApiVersion.VS14RTM) 中引進。

GetMetaDataFileInfo(Boolean, UInt32, UInt32)

取得直接從磁碟上的檔案讀取元數據所需的資訊。

此 API 是在 Visual Studio 16 Update 2 (DkmApiVersion.VS16Update2) 引進。

GetMetaDataImport()

從指定的模組取得 CLR 元數據。 如需元數據的詳細資訊,請參閱 MSDN 中的 IMetaDataImport 檔。

注意:從 Managed 程式代碼取用此 API 時,呼叫端必須非常小心。 IMetaDataImport 實作可能會保存偵錯檔案的檔案句柄,而且只有在 COM 參考計數達到零時,才會關閉檔句柄。 因此,它必須手動釋放 (Marshal.IsComObject + Marshal.ReleaseComObject) ,而不是等待 GC 偵測到可以釋放物件。 測試時,請確定偵錯項目檔案至少有 64 KB 的元數據,因為元數據讀取器不會在處理小型檔案時將檔案鎖定以供讀取。

GetMetadataStatus()

取得元數據狀態。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 中引進。

GetMethodTokens(DkmWorkList, String, String, DkmCompletionRoutine<DkmGetMethodTokensAsyncResult>)

提供一種機制,以取得給定類別之方法的元數據令牌。 相當於 IMetaDataImport::EnumMethodsWithName。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

此 API 是在 Visual Studio 14 RTM (DkmApiVersion.VS14RTM) 中引進。

GetMethodTokens(String, String, Int32[])

提供一種機制,以取得給定類別之方法的元數據令牌。 相當於 IMetaDataImport::EnumMethodsWithName。

此 API 是在 Visual Studio 14 RTM (DkmApiVersion.VS14RTM) 中引進。

GetNextGPUInstructionAddress(UInt64)

傳回下一個相對於起始位址的指令位址。

(繼承來源 DkmModuleInstance)
GetSymbolLoadInformation()

傳回字串,描述搜尋符號的各種位置,以及檢查該位置的結果。 此資訊可用來填入模組視窗中的「符號載入資訊」。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

(繼承來源 DkmModuleInstance)
GetSymbolSearchResult()

擷取與此模組實例相關聯的任何符號搜尋結果。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) 中引進。

(繼承來源 DkmModuleInstance)
GetSymbolSearchResult(DkmWorkList, DkmCompletionRoutine<DkmGetSymbolSearchResultAsyncResult>)

擷取與此模組實例相關聯的任何符號搜尋結果。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回 。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 3 (DkmApiVersion.VS17Update3) 中引進。

(繼承來源 DkmModuleInstance)
GetSymbolStatusMessage(Boolean)

取得目前符號狀態的當地語系化字串描述。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

(繼承來源 DkmModuleInstance)
GetSymbolStatusMessage(DkmWorkList, Boolean, DkmCompletionRoutine<DkmGetSymbolStatusMessageAsyncResult>)

取得目前符號狀態的當地語系化字串描述。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回 。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

(繼承來源 DkmModuleInstance)
GetSymUnmanagedReader()

此 API 提供 CLR 模組的部分 ISymUnmanagedReader2 實作。

位置條件約束:將ISymUnmanagedReader2的部分實作提供給遠端連線的兩端。

此 API 是在 Visual Studio 15 RTM (DkmApiVersion.VS15RTM) 中引進。

GetTypeIdForTypeName(String)

傳回指定型別名稱的類型識別碼。

此 API 是在 Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8) 中引進。

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

藉由解譯方法的 MSIL 程式代碼,模擬物件上的方法執行。 方法的結果會傳回給呼叫端。 不過,不同於函式評估,方法實際上在目標中執行,解譯方法實際上不會執行方法,而是只模擬方法的行為。 因為方法永遠不會實際執行,所以方法執行所產生的任何副作用都會在方法解譯完成之後捨棄,讓目標進程在呼叫之前的狀態相同。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 中引進。

IsSuppressed()

這個方法可讓元件判斷模組的模組載入事件是否已隱藏。

此 API 是在 Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3) 引進。

(繼承來源 DkmModuleInstance)
IsTransitionModule()

如果任何運行時間實例已將此模組標示為轉換模組,則傳回 true。

位置條件約束:必須從監視器元件 (元件層級 < 100,000) 呼叫 API。

(繼承來源 DkmModuleInstance)
IsUserCode()

判斷模組是否被視為使用者程序代碼。

位置條件約束:這個方法可以從IDE元件呼叫。 從 Visual Studio 2013 Update 2 開始,您也可以從 Managed 程式代碼的監視元件呼叫此功能。 從 Visual Studio 2017 Update 8 開始,API 的 CallDirection 是從 'Normal' 建立的,現在可以從任何元件呼叫 AsyncCaller 已設定為 'true',而 CallerLocationConstraint 已從 'NoMarshalling' 設定為 'None'。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 引进。

(繼承來源 DkmModuleInstance)
IsUserCode(DkmWorkList, DkmCompletionRoutine<DkmModuleInstanceIsUserCodeAsyncResult>)

判斷模組是否被視為使用者程序代碼。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回 。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:這個方法可以從IDE元件呼叫。 從 Visual Studio 2013 Update 2 開始,您也可以從 Managed 程式代碼的監視元件呼叫此功能。 從 Visual Studio 2017 Update 8 開始,API 的 CallDirection 是從 'Normal' 建立的,現在可以從任何元件呼叫 AsyncCaller 已設定為 'true',而 CallerLocationConstraint 已從 'NoMarshalling' 設定為 'None'。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 引进。

(繼承來源 DkmModuleInstance)
OnBinaryLoaded(String)

引發 BinaryLoaded 事件。 實作事件接收介面的元件將會收到事件通知。 所有元件都收到通知后,控件就會傳回。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 引进。

(繼承來源 DkmModuleInstance)
OnBinaryReloadOpportunity()

引發 BinaryReloadOpportunity 事件。 實作事件接收介面的元件將會收到事件通知。 所有元件都收到通知后,控件就會傳回。

位置條件約束:必須從監視器元件 (元件層級 < 100,000) 呼叫 API。

此 API 是在 Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2) 引進。

(繼承來源 DkmModuleInstance)
OnModuleModified()

當模組因 EnC 或動態發出程式代碼而變更時,會呼叫此方法。

位置條件約束:必須從監視器元件 (元件層級 < 100,000) 呼叫 API。

此 API 是在 Visual Studio 14 RTM (DkmApiVersion.VS14RTM) 中引進。

(繼承來源 DkmModuleInstance)
OnSymbolsLoaded(DkmModule, Boolean)

基底偵錯監視器會叫用這個方法,以回應對IDkmModuleSymbolsLoaded.RaiseSymbolsLoadedEvent 的呼叫。 這個方法必須從事件線程叫用,或從要求線程叫用,作為重載的一部分。 基底偵錯監視器應該同步切換至事件線程、暫停目標進程,以及叫用 OnSymbolsLoaded。

位置條件約束:必須從監視器元件 (元件層級 < 100,000) 呼叫 API。

(繼承來源 DkmModuleInstance)
OnSymbolsUpdated(DkmModule)

引發 ModuleSymbolsUpdated 事件。 實作事件接收介面的元件將會收到事件通知。 所有元件都收到通知后,控件就會傳回。

(繼承來源 DkmModuleInstance)
ReadSymbols()

符號處理程式會叫用這個方法,以讀取符號位於偵錯範圍內存中的 DkmModuleInstances 符號。

(繼承來源 DkmModuleInstance)
RemoveDataItem<T>()

從這個容器中移除 『T』 的實例。 通常不需要呼叫這個方法,因為關閉物件時,數據容器會自動清空。

(繼承來源 DkmDataContainer)
ResolveTypeName(String, ReadOnlyCollection<DkmClrType>)

將類型名稱解析為類型。 如果類型為泛型,則不會具現化泛型參數。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 中引進。

SetDataItem<T>(DkmDataCreationDisposition, T)

將新專案放在數據容器中。

(繼承來源 DkmDataContainer)
SetDisabled(Boolean)

匯報 模組上的停用狀態。 這個方法只能從ModuleInstanceLoad事件呼叫。 停用模組時,通常也會隱藏模組載入事件。

(繼承來源 DkmModuleInstance)
SetModule(DkmModule, Boolean)

符號提供者會叫用這個方法,以將 DkmModule 與 DkmModuleInstance 產生關聯,並觸發 ModuleSymbolsLoaded 事件。 DkmModuleInstance 物件只能呼叫一次。 呼叫此 API 會建立 DkmModule-DkmModuleInstance<> 關聯,以及引發 ModuleSymbolsLoaded 事件。

(繼承來源 DkmModuleInstance)
TryLoadBinary()

嘗試載入先前無法使用更新符號路徑載入的二進位檔。

(繼承來源 DkmModuleInstance)
TryLoadBinary(DkmWorkList, DkmCompletionRoutine<DkmTryLoadBinaryAsyncResult>)

嘗試載入先前無法使用更新符號路徑載入的二進位檔。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

(繼承來源 DkmModuleInstance)
TryLoadDecompiledSymbols()

嘗試載入模組的快取反編譯符號。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

TryLoadDecompiledSymbols(DkmWorkList, DkmCompletionRoutine<DkmTryLoadDecompiledSymbolsAsyncResult>)

嘗試載入模組的快取反編譯符號。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5) 引進。

TryLoadSymbols()

呼叫 以起始載入模組時找不到其符號之 DkmModuleInstances 的符號載入。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

(繼承來源 DkmModuleInstance)
TryLoadSymbols(DkmSymbolLoadFlags)

呼叫 以起始載入模組時找不到其符號之 DkmModuleInstances 的符號載入。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) 中引進。

(繼承來源 DkmModuleInstance)
TryLoadSymbols(DkmWorkList, DkmCompletionRoutine<DkmTryLoadSymbolsAsyncResult>)

呼叫 以起始載入模組時找不到其符號之 DkmModuleInstances 的符號載入。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

(繼承來源 DkmModuleInstance)
TryLoadSymbols(DkmWorkList, DkmSymbolLoadFlags, DkmCompletionRoutine<DkmTryLoadSymbolsAsyncResult>)

呼叫 以起始載入模組時找不到其符號之 DkmModuleInstances 的符號載入。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。

此 API 是在 Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4) 中引進。

(繼承來源 DkmModuleInstance)
TryLoadSymbolsCallback()

呼叫 以起始載入模組時找不到其符號之 DkmModuleInstances 的符號載入。

位置條件約束:這可以從用戶端或伺服器呼叫。 伺服器的實作是一種快取,可防止不必要的網路呼叫。 用戶端會直接移至「實際」實作,這也會確保提早重新嘗試傳回。

此 API 是在 Visual Studio 17 RTM (DkmApiVersion.VS17RTM) 中引進。

(繼承來源 DkmModuleInstance)
TryLoadSymbolsCallback(DkmWorkList, DkmCompletionRoutine<DkmTryLoadSymbolsCallbackAsyncResult>)

呼叫 以起始載入模組時找不到其符號之 DkmModuleInstances 的符號載入。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:這可以從用戶端或伺服器呼叫。 伺服器的實作是一種快取,可防止不必要的網路呼叫。 用戶端會直接移至「實際」實作,這也會確保提早重新嘗試傳回。

此 API 是在 Visual Studio 17 RTM (DkmApiVersion.VS17RTM) 中引進。

(繼承來源 DkmModuleInstance)
TryLoadSymbolsCallback177(DkmSymbolLoadFlags)

呼叫 以起始載入本機的符號,以在載入模組時找不到其符號的 DkmModuleInstances。

位置條件約束:這可以從用戶端或伺服器呼叫。 伺服器的實作是一種快取,可防止不必要的網路呼叫。 用戶端會直接移至「實際」實作,這也會確保提早重新嘗試傳回。

此 API 是在 Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) 中引進。

(繼承來源 DkmModuleInstance)
TryLoadSymbolsCallback177(DkmWorkList, DkmSymbolLoadFlags, DkmCompletionRoutine<DkmTryLoadSymbolsCallback177AsyncResult>)

呼叫 以起始載入本機的符號,以在載入模組時找不到其符號的 DkmModuleInstances。

這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。

位置條件約束:這可以從用戶端或伺服器呼叫。 伺服器的實作是一種快取,可防止不必要的網路呼叫。 用戶端會直接移至「實際」實作,這也會確保提早重新嘗試傳回。

此 API 是在 Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7) 中引進。

(繼承來源 DkmModuleInstance)
TryResolveToken(DkmStackWalkFrame, Int32, DkmClrType, Int32)

嘗試將令牌從此模組的範圍內解析為定義模組。

位置條件約束:必須從監視元件呼叫 API, (元件層級 < 100,000) 。

此 API 是在 Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8) 中引進。

Unload()

將 Unload 物件標示為已卸除,並通知實作事件接收介面的元件。 一旦所有元件都收到通知,控件就會傳回。

這個方法只能由建立 物件的元件呼叫。

(繼承來源 DkmModuleInstance)

適用於