DkmTransportConnection 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這代表監視器與 IDE 之間的連線。 如果監視器在與 IDE 相同的進程中執行,則它可以是本機連線,也可以是遠端連線。 在監視程式中,只有一個連線。
衍生類別:DkmStandardRemoteTransportConnection
public ref class DkmTransportConnection : Microsoft::VisualStudio::Debugger::DkmDataContainer
[System.Runtime.InteropServices.Guid("37f756b6-9ea0-4c02-3f0a-99fb3a0f7a77")]
public class DkmTransportConnection : Microsoft.VisualStudio.Debugger.DkmDataContainer
[<System.Runtime.InteropServices.Guid("37f756b6-9ea0-4c02-3f0a-99fb3a0f7a77")>]
type DkmTransportConnection = class
inherit DkmDataContainer
Public Class DkmTransportConnection
Inherits DkmDataContainer
- 繼承
- 繼承
- 衍生
- 屬性
屬性
DebuggerCpuArchitecture |
監視端調試程式元件的架構。 這是具有元件層級 < 100,000 的調試程式元件。 此 API 是在 Visual Studio 17 RTM (DkmApiVersion.VS17RTM) 中引進。 |
Flags |
指出基礎連線特性的旗標。 |
IsUnloaded |
如果已針對這個對象引發 'unloaded' 事件,則傳回 true (範例:DkmThread::Unload 會呼叫) 或物件已關閉。 請注意,檢查此狀態時必須小心,而不進行同步處理,傳回的狀態在讀取之後可能無法再精確指示。 (繼承來源 DkmDataContainer) |
Kind |
指出用來偵錯的傳輸類型。 |
ProtocolVersion |
Visual Studio 與目標計算機之間所使用的通訊協定版本。 這是 Visual Studio 瞭解的通訊協定版本下限,以及遠端調試程式瞭解的通訊協定版本。 此 API 是在 Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1) 中引進。 |
Qualifier |
[選擇性]指出連接目的地的字串。 本機連線將會是 Null。 針對預設遠端偵錯,這是我們嘗試連線的計算機名稱和埠號碼。 |
UniqueId |
可唯一識別此連線的 Guid。 本機聯機將使用值 『DkmTransportKind.Local』。 將會隨機產生其他連線的值。 |
方法
ActivateAppPackage(DkmWorkList, DkmPackagedAppPlatform, String, Boolean, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
啟動指定的封裝應用程式。 如果應用程式尚未啟動,這會導致應用程式啟動,如果應用程式已在執行中,則會將其恢復為使用中應用程式。 在調試程式下啟動時,會在此 API 之前呼叫 IDkmProcessLaunchNotifyListener.StartListener。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 |
ActivateAppPackageExtended(DkmWorkList, DkmPackagedAppPlatform, String, Boolean, DkmActivateAppPackageFlags, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
啟動指定的封裝應用程式。 如果應用程式尚未啟動,這會導致應用程式啟動,如果應用程式已在執行中,則會將其恢復為使用中應用程式。 在調試程式下啟動時,會在此 API 之前呼叫 IDkmProcessLaunchNotifyListener.StartListener。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 此 API 是在 Visual Studio 14 Update 1 (DkmApiVersion.VS14Update1) 引進。 |
ActivateAppPackageOnTargetMonitor(DkmWorkList, DkmPackagedAppPlatform, String, Boolean, UInt32, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
在指定的監視器上啟動封裝的應用程式。 如果應用程式尚未啟動,這會導致應用程式啟動,如果應用程式已在執行中,則會將其恢復為使用中應用程式。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 此 API 是在 Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3) 引進。 |
ActivateAppPackageWithStartupTask(DkmWorkList, String, Boolean, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
啟動指定的封裝應用程式。 如果應用程式尚未啟動,這會導致應用程式啟動,如果應用程式已在執行中,則會將其恢復為使用中應用程式。 在調試程式下啟動時,會在此 API 之前呼叫 IDkmProcessLaunchNotifyListener.StartListener。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 此 API 是在 Visual Studio 14 RTM (DkmApiVersion.VS14RTM) 中引進。 |
ActivateBackgroundTask(DkmWorkList, DkmAppPackageId, Int32, Guid, DkmCompletionRoutine<DkmActivateBackgroundTaskAsyncResult>) |
啟動背景工作。 這可供開發人員用來測試其應用程式的啟動處理程式。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 |
CreateCoreDumpParserTargetCompositionServices(String, Object) |
Create Core 檔案剖析案例的 IDebugServiceManager 實例,可用來存取以目標組合為基礎的延伸模組。 一旦 DkmProcess 可供使用,請呼叫 SetCoreDumpParserTargetCompositionServices,以便正確地快取實例。 位置條件約束:目標組合介面無法在機器之間封送處理,但如果有的話,可以使用。 此 API 是在 Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8) 引進。 |
CreateDirectory(String) |
在目標電腦上建立目錄。 請注意,部署檔案時會隱含建立目錄。 因此,此 API 不需要用於該案例。 |
DeleteFile(String) |
刪除目標電腦上的檔案。 |
DeployFile(String, String, Boolean) |
將檔案部署至目標計算機。 請注意,這會複製檔案內容和上次寫入時間,但不會複製屬性。 位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。 |
DownloadFile(DkmWorkList, String, String, Boolean, DkmCompletionRoutine<DkmDownloadFileAsyncResult>) |
從目標計算機下載檔案。 請注意,這會複製檔案內容和上次寫入時間,但不會複製屬性。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。 |
DownloadFile(String, String, Boolean) |
從目標計算機下載檔案。 請注意,這會複製檔案內容和上次寫入時間,但不會複製屬性。 位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。 |
EnumerateBackgroundTasks(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmEnumerateBackgroundTasksAsyncResult>) |
列舉現有的背景工作。 開發人員會使用此功能來測試其應用程式的列舉處理程式。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 |
EnumPackages() |
列舉已安裝且可啟動 (應用程式套件與應用程式套件) 應用程式套件。 位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。 |
EnumRunningProcesses(Boolean, DkmRunningProcessInfoPropertyMask) |
提供目標計算機上執行的所有進程清單, (包括未) 偵錯的進程。 |
EnumRunningProcesses(DkmWorkList, Boolean, DkmRunningProcessInfoPropertyMask, DkmCompletionRoutine<DkmEnumRunningProcessesAsyncResult>) |
提供目標計算機上執行的所有進程清單, (包括未) 偵錯的進程。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 |
ExtractFromDeployConnection(IVsDebuggerDeployConnection) |
取得支援部署連接的 DkmTransportConnection 物件。 這可用來從調試程式部署 API 到調試程式引擎, (Dkm) API。 例如,這可用來傳送 DkmCustomMessages。 呼叫端仍然必須保留 deployConnection,以避免處置基礎 DkmTransportConnection。 請注意,預設會在停止偵錯期間卸除串連元件。 您可以在元件的 .vsdconfigxml 檔案中設定 'StayLoadedForDeployConnection=“true”' 來覆寫此行為。 如果呼叫端想要擷取部署連線以傳送自定義訊息,而且想要在調試程式會話結束之後這樣做,這非常有用。 |
ExtractFromPort(IDebugPort2) |
會取得支援此埠物件的 DkmTransportConnection 物件。 如果埠目前未連線,且重新連線失敗,這將會在遠端偵錯案例中失敗。 此 API 只會從 Visual Studio 的主線程正確運作。 |
FindConnection(Guid) |
尋找 DkmTransportConnection 物件。 如果沒有具有指定輸入索引鍵的物件存在,FindConnection 將會失敗。 |
FindLiveProcess(Int32) |
在此 DkmTransportConnection 內尋找 DkmProcess 元素。 如果沒有具有指定輸入索引鍵的專案存在,FindLiveProcess 將會失敗。 如果找到物件,它一律會包含 『Live』 元件。 |
FindProcess(Guid) |
在此 DkmTransportConnection 內尋找 DkmProcess 元素。 如果沒有具有指定輸入索引鍵的專案存在,FindProcess 將會失敗。 |
FindProductionConnection(Guid) |
在此 DkmTransportConnection 內尋找 DkmProductionConnection 元素。 如果沒有具有指定輸入索引鍵的專案存在,FindProductionConnection 將會失敗。 此 API 是在 Visual Studio 15 Update 2 (DkmApiVersion.VS15Update2) 中引進。 |
FindRecordedProcessInfo(String) |
在此 DkmTransportConnection 內尋找 DkmRecordedProcessInfo 元素。 如果沒有具有指定輸入索引鍵的專案存在,FindRecordedProcessInfo 將會失敗。 此 API 是在 Visual Studio 16 RTM (DkmApiVersion.VS16RTM) 中引進。 |
FindSerializedProcessInfo(String) |
在此 DkmTransportConnection 內尋找 DkmSerializedProcessInfo 元素。 如果沒有具有指定輸入索引鍵的專案,FindSerializedProcessInfo 將會失敗。 此 API 是在 Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8) 引進。 |
FlushClosedObjectQueue() |
此函式用來強制所有物件關閉通知立即與監視程序交換。 如同 『GC。在 Managed 程式代碼中收集『,此函式通常是不必要的,因為系統會自動排清佇列。 不過,如果所有更新都立即交換,則可以使用這個方法。 當元件在指定物件上呼叫 『Close』 時,會建立物件關閉通知 (和排入佇列) 。 監視進程和引擎進程都會維護已關閉物件的佇列。 這個方法只能從引擎進程呼叫,但用來排清這兩個佇列。 位置條件約束:必須從 IDE 元件呼叫 API, (元件層級 > 100,000) 。 |
GetAppPackageExecutionState(DkmAppPackageId, Int32) |
取得 Windows 市集應用程式的執行狀態。 此欄位中的值會在 PACKAGE_EXECUTION_STATE 中指定。 |
GetClrVersionOfExecutable(String) |
提供調試程式預期要載入指定可執行檔之 CLR 的版本字串。 傳回值是以可執行檔的PE標頭內容為基礎, (如果exe是受管理) 、可執行檔的組態檔、CLR環境變數,以及登錄中的載入器原則。 傳回值可能不正確,特別是在原生可執行文件的情況下。 |
GetConnections() |
GetConnections 會列舉所有已建立的 DkmTransportConnection 物件。 |
GetDataItem<T>() |
取得已新增至這個容器實例的 『T』 實例。 如果此容器不包含 『T』,此函式會傳回 null。 (繼承來源 DkmDataContainer) |
GetDefaultClrVersion() |
傳回在監視程式中載入的 CLR 版本。 |
GetDNSName() |
提供目標計算機所使用的實體 DNS 主機名。 |
GetFileListing(String, String, Boolean) |
取得存在於目標電腦上的檔案和子目錄清單。 |
GetIsolatedStorageRootForApplication(DkmAppPackageId) |
取得指定應用程式之隔離儲存根目錄的完整路徑。 此 API 尚未針對 Windows 市集應用程式實作,但保留供日後使用。 |
GetLiveProcesses() |
GetLiveProcesses 會列舉這個 DkmTransportConnectionobject 的 DkmProcess 元素。 所有物件都包含 『Live』 元件。 |
GetProcesses() |
GetProcesses 會列舉這個 DkmTransportConnection 物件的 DkmProcess 元素。 |
GetProductionConnections() |
GetProductionConnections 會列舉這個 DkmTransportConnection 物件的 DkmProductionConnection 元素。 此 API 是在 Visual Studio 15 Update 2 中引進, (DkmApiVersion.VS15Update2) 。 |
GetRecordedProcesses() |
GetRecordedProcesses 會列舉這個 DkmTransportConnection 物件的 DkmRecordedProcessInfo 元素。 此 API 是在 Visual Studio 16 RTM (DkmApiVersion.VS16RTM) 中引進。 |
GetRecordedProcessInfo(String) |
取得所記錄檔案的相關信息。 此 API 是在 Visual Studio 16 RTM (DkmApiVersion.VS16RTM) 中引進。 |
GetRequests() |
GetRequests 會列舉這個 DkmTransportConnection 物件的 DkmProcessLaunchRequest 元素。 |
GetRunningProcessInfo(Int32, Int64, Boolean, DkmRunningProcessInfoPropertyMask) |
取得在目標計算機上執行之進程的相關信息。 |
GetSerializedProcessInfo(String) |
取得檔案的相關信息。 此 API 是在 Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8) 引進。 |
GetSerializedProcessInformation() |
GetSerializedProcessInformation 會列舉這個 DkmTransportConnection 物件的 DkmSerializedProcessInfo 元素。 此 API 是在 Visual Studio 16 Update 8 (DkmApiVersion.VS16Update8) 引進。 |
GetSystemInformation(Boolean) |
提供偵錯監視器執行所在計算機的相關信息。 |
QueryExecutableArchitecture(String) |
取得可執行文件的架構。 此 API 是在 Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview) 中引進。 |
QueryIsWOW64Executable(String) |
已取代。 使用 QueryExecutableArchitecture。 判斷指定的可執行檔是否會在 WOW64 (Windows) 內執行,以在 64 位操作系統上執行 32 位進程。 |
RemoveAppPackageFromTaskbar(DkmAppPackageId, UInt32) |
關閉任務列以移除沈浸式應用程式圖示。 此 API 是在 Visual Studio 12 Update 3 (DkmApiVersion.VS12Update3) 引進。 |
RemoveDataItem<T>() |
從這個容器中移除 『T』 的實例。 通常不需要呼叫這個方法,因為數據容器會在物件關閉時自動清空。 (繼承來源 DkmDataContainer) |
RemoveDirectory(String, Boolean) |
拿掉目標電腦上的目錄。 |
ResumeAppPackage(DkmAppPackageId, Int32) |
根據指定的應用程式,執行模擬進程存留期管理。 這供開發人員用來測試其應用程式的繼續處理程式。 |
SetDataItem<T>(DkmDataCreationDisposition, T) |
將新專案放在數據容器中。 (繼承來源 DkmDataContainer) |
ShutDownAppPackage(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmShutDownAppPackageAsyncResult>) |
使用進程存留期管理服務暫停並關閉指定的應用程式。 使用此功能后再啟動第二個應用程式,開發人員就可以測試其應用程式從暫停狀態重新啟動的能力。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回 。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 |
SuspendAppPackage(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmSuspendAppPackageAsyncResult>) |
根據指定的應用程式執行模擬進程存留期管理暫止。 這可供開發人員用來測試其應用程式的暫停處理程式。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回 。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 |
TakeNonDebugProcessSnapshot(UInt32) |
擷取進程的進程快照集。 唯一保留的數據是快照集本身,沒有任何參考回任何父進程。 此 API 是在 Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6) 引進。 |
TerminateAppPackage(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmTerminateAppPackageAsyncResult>) |
終止應用程式套件。 用來確保與封裝相關聯的所有進程都已停止。 這個方法會將新的工作專案附加至指定的工作清單,並在附加工作項目之後傳回 。 工作項目的實際處理是異步的。 呼叫端將會透過完成例程收到要求完成的通知。 此 API 是在 Visual Studio 16 Update 9 (DkmApiVersion.VS16Update9) 中引進。 |
TerminateRunningProcess(Int32, Int64, Int32) |
終止在未偵錯的目標計算機上執行的進程。 |
TriggerPrefetch(String, DkmPackagedAppPlatform) |
觸發應用程式內容預先擷取。 此 API 是在 Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2) 引進。 |