DkmTransportConnection Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Isso representa uma conexão entre o monitor e o IDE. Ele pode ser uma conexão local se o monitor estiver em execução no mesmo processo que o IDE ou pode ser uma conexão remota. No processo de monitor, há apenas uma conexão.
Classes derivadas: 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
- Herança
- Herança
- Derivado
- Atributos
Propriedades
DebuggerCpuArchitecture |
Arquitetura de componentes do depurador do lado do monitor. Isso é componentes do depurador com nível < de componente 100.000. Essa API foi introduzida no Visual Studio 17 RTM (DkmApiVersion.VS17RTM). |
Flags |
Sinalizadores que indicam características da conexão subjacente. |
IsUnloaded |
Retornará true se um evento 'descarregado' tiver sido gerado para este objeto (exemplo: DkmThread::Unload for chamado) ou se o objeto tiver sido fechado. Observe que o cuidado deve ser usado ao verificar esse status, pois, sem sincronização, o status retornado pode não ser mais preciso após a leitura. (Herdado de DkmDataContainer) |
Kind |
Indica o tipo de transporte que está sendo usado para depurar. |
ProtocolVersion |
A versão do protocolo usada entre o Visual Studio e o computador de destino. Esse é o mínimo da versão de protocolo que o Visual Studio entende e a versão do protocolo que o depurador remoto entende. Essa API foi introduzida no Visual Studio 11 Atualização 1 (DkmApiVersion.VS11FeaturePack1). |
Qualifier |
[Opcional] Cadeia de caracteres que indica o destino da conexão. Isso será nulo para a conexão local. Para depuração remota padrão, esse é o nome do computador e o número da porta aos quais estamos tentando nos conectar. |
UniqueId |
Guid que identifica exclusivamente essa conexão. A conexão local usará o valor 'DkmTransportKind.Local'. O valor de outras conexões será gerado aleatoriamente. |
Métodos
ActivateAppPackage(DkmWorkList, DkmPackagedAppPlatform, String, Boolean, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
Ativa o aplicativo empacotado especificado. Isso fará com que o aplicativo seja iniciado se ele ainda não tiver sido iniciado e o retornará como o aplicativo ativo se ele já estiver em execução. Ao iniciar sob o depurador, IDkmProcessLaunchNotifyListener.StartListener será chamado antes dessa API. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. |
ActivateAppPackageExtended(DkmWorkList, DkmPackagedAppPlatform, String, Boolean, DkmActivateAppPackageFlags, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
Ativa o aplicativo empacotado especificado. Isso fará com que o aplicativo seja iniciado se ele ainda não tiver sido iniciado e o retornará como o aplicativo ativo se ele já estiver em execução. Ao iniciar sob o depurador, IDkmProcessLaunchNotifyListener.StartListener será chamado antes dessa API. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. Essa API foi introduzida no Visual Studio 14 Atualização 1 (DkmApiVersion.VS14Update1). |
ActivateAppPackageOnTargetMonitor(DkmWorkList, DkmPackagedAppPlatform, String, Boolean, UInt32, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
Ativa um aplicativo empacotado no monitor especificado. Isso fará com que o aplicativo seja iniciado se ele ainda não tiver sido iniciado e o retornará como o aplicativo ativo se ele já estiver em execução. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. Essa API foi introduzida no Visual Studio 12 Atualização 3 (DkmApiVersion.VS12Update3). |
ActivateAppPackageWithStartupTask(DkmWorkList, String, Boolean, DkmCompletionRoutine<DkmActivateAppPackageAsyncResult>) |
Ativa o aplicativo empacotado especificado. Isso fará com que o aplicativo seja iniciado se ele ainda não tiver sido iniciado e o retornará como o aplicativo ativo se ele já estiver em execução. Ao iniciar sob o depurador, IDkmProcessLaunchNotifyListener.StartListener será chamado antes dessa API. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. Essa API foi introduzida no Visual Studio 14 RTM (DkmApiVersion.VS14RTM). |
ActivateBackgroundTask(DkmWorkList, DkmAppPackageId, Int32, Guid, DkmCompletionRoutine<DkmActivateBackgroundTaskAsyncResult>) |
Ativar uma tarefa em segundo plano. Isso é usado pelos desenvolvedores para testar o manipulador de ativação do aplicativo. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. |
CreateCoreDumpParserTargetCompositionServices(String, Object) |
Create uma instância de IDebugServiceManager para o cenário de análise de arquivo principal, que pode ser usado para acessar extensões baseadas em Composição de Destino. Depois que o DkmProcess estiver disponível, chame SetCoreDumpParserTargetCompositionServices para que a instância possa ser armazenada em cache corretamente. Restrição de local: as interfaces de composição de destino não podem ter marshaling em todo o computador, mas são seguras de usar, se disponíveis. Essa API foi introduzida no Visual Studio 16 Atualização 8 (DkmApiVersion.VS16Update8). |
CreateDirectory(String) |
Cria um diretório no computador de destino. Observe que os diretórios são criados implicitamente ao implantar arquivos. Portanto, essa API não precisa ser usada nesse cenário. |
DeleteFile(String) |
Exclua um arquivo no computador de destino. |
DeployFile(String, String, Boolean) |
Implante um arquivo no computador de destino. Observe que isso copiará o conteúdo do arquivo e a hora da última gravação, mas não os atributos. Restrição de local: a API deve ser chamada de um componente IDE (nível > de componente 100.000). |
DownloadFile(DkmWorkList, String, String, Boolean, DkmCompletionRoutine<DkmDownloadFileAsyncResult>) |
Baixe um arquivo do computador de destino. Observe que isso copiará o conteúdo do arquivo e a hora da última gravação, mas não os atributos. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. Restrição de local: a API deve ser chamada de um componente IDE (nível > de componente 100.000). |
DownloadFile(String, String, Boolean) |
Baixe um arquivo do computador de destino. Observe que isso copiará o conteúdo do arquivo e a hora da última gravação, mas não os atributos. Restrição de local: a API deve ser chamada de um componente IDE (nível > de componente 100.000). |
EnumerateBackgroundTasks(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmEnumerateBackgroundTasksAsyncResult>) |
Enumera as tarefas em segundo plano existentes. Isso é usado pelos desenvolvedores para testar o manipulador de enumeração do aplicativo. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. |
EnumPackages() |
Enumera pacotes de aplicativos instalados e inicializáveis (Pacotes de Aplicativos com aplicativos). Restrição de local: a API deve ser chamada de um componente IDE (nível > de componente 100.000). |
EnumRunningProcesses(Boolean, DkmRunningProcessInfoPropertyMask) |
Fornece uma listagem de todos os processos em execução no computador de destino (incluindo processos que não estão sendo depurados). |
EnumRunningProcesses(DkmWorkList, Boolean, DkmRunningProcessInfoPropertyMask, DkmCompletionRoutine<DkmEnumRunningProcessesAsyncResult>) |
Fornece uma listagem de todos os processos em execução no computador de destino (incluindo processos que não estão sendo depurados). Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. |
ExtractFromDeployConnection(IVsDebuggerDeployConnection) |
Obtém o objeto DkmTransportConnection que apoia a conexão de implantação. Isso pode ser usado para fazer a ponte entre a API de implantação do depurador e as APIs do mecanismo de depurador (Dkm). Por exemplo, isso pode ser usado para enviar DkmCustomMessages. O chamador ainda deve manter deployConnection para evitar que o DkmTransportConnection subjacente seja descartado. Observe que, por padrão, os componentes de concordância serão descarregados durante a depuração de parada. Esse comportamento pode ser substituído definindo 'StayLoadedForDeployConnection="true"' no arquivo .vsdconfigxml do componente. Isso será útil se o chamador quiser extrair a conexão de implantação para enviar mensagens personalizadas e quiser fazê-lo após o término da sessão do depurador. |
ExtractFromPort(IDebugPort2) |
Obtém o objeto DkmTransportConnection que apoia esse objeto de porta. Isso falhará em cenários de depuração remota se a porta não estiver conectada no momento e a reconexão não tiver sido bem-sucedida. Essa API só funcionará corretamente do thread main do Visual Studio. |
FindConnection(Guid) |
Localize um objeto DkmTransportConnection. Se nenhum objeto com a chave de entrada fornecida estiver presente, FindConnection falhará. |
FindLiveProcess(Int32) |
Localize um elemento DkmProcess dentro deste DkmTransportConnection. Se nenhum elemento com a chave de entrada fornecida estiver presente, FindLiveProcess falhará. Se um objeto for encontrado, ele sempre conterá a parte 'Live'. |
FindProcess(Guid) |
Localize um elemento DkmProcess dentro deste DkmTransportConnection. Se nenhum elemento com a chave de entrada fornecida estiver presente, FindProcess falhará. |
FindProductionConnection(Guid) |
Localize um elemento DkmProductionConnection dentro deste DkmTransportConnection. Se nenhum elemento com a chave de entrada fornecida estiver presente, FindProductionConnection falhará. Essa API foi introduzida no Visual Studio 15 Atualização 2 (DkmApiVersion.VS15Update2). |
FindRecordedProcessInfo(String) |
Localize um elemento DkmRecordedProcessInfo dentro deste DkmTransportConnection. Se nenhum elemento com a chave de entrada fornecida estiver presente, FindRecordedProcessInfo falhará. Essa API foi introduzida no Visual Studio 16 RTM (DkmApiVersion.VS16RTM). |
FindSerializedProcessInfo(String) |
Localize um elemento DkmSerializedProcessInfo dentro deste DkmTransportConnection. Se nenhum elemento com a chave de entrada fornecida estiver presente, FindSerializedProcessInfo falhará. Essa API foi introduzida no Visual Studio 16 Atualização 8 (DkmApiVersion.VS16Update8). |
FlushClosedObjectQueue() |
Essa função é usada para forçar que todas as notificações de fechamento de objeto sejam trocadas imediatamente com o processo de monitor. Como GC. Collect' no código gerenciado, essa função normalmente é desnecessária, pois o sistema libera automaticamente a fila. No entanto, esse método poderá ser usado se for importante que todas as atualizações sejam trocadas imediatamente. Uma notificação de fechamento de objeto é criada (e enfileirada) quando um componente chama 'Close' em um determinado objeto. O processo do monitor e o processo do mecanismo mantêm uma fila de objetos fechados. Esse método só pode ser chamado do processo do mecanismo, mas é usado para liberar ambas as filas. Restrição de local: a API deve ser chamada de um componente IDE (nível > de componente 100.000). |
GetAppPackageExecutionState(DkmAppPackageId, Int32) |
Obter o estado de execução do aplicativo da Windows Store. Os valores nesse campo são especificados em PACKAGE_EXECUTION_STATE. |
GetClrVersionOfExecutable(String) |
Fornece a cadeia de caracteres de versão para o CLR que o depurador espera que um determinado executável carregue. O valor retornado é baseado no conteúdo do cabeçalho PE do executável (se o exe for gerenciado), no arquivo de configuração do executável, nas variáveis de ambiente CLR e na política do carregador no registro. O valor retornado pode estar incorreto, especialmente no caso de um executável nativo. |
GetConnections() |
GetConnections enumera todos os objetos DkmTransportConnection criados. |
GetDataItem<T>() |
Obtém a instância de 'T' que foi adicionada a essa instância de contêiner. Se esse contêiner não contiver um 'T', essa função retornará nulo. (Herdado de DkmDataContainer) |
GetDefaultClrVersion() |
Retorna a versão do CLR que é carregada no processo do monitor. |
GetDNSName() |
Fornece o nome do host DNS físico que o computador de destino usa. |
GetFileListing(String, String, Boolean) |
Obtém uma listagem de arquivos e subdiretórios que existem no computador de destino. |
GetIsolatedStorageRootForApplication(DkmAppPackageId) |
Obtenha o caminho completo para o diretório raiz de armazenamento isolado para o aplicativo especificado. Essa API ainda não foi implementada para aplicativos da Windows Store, mas está reservada para uso futuro. |
GetLiveProcesses() |
GetLiveProcesses enumera os elementos DkmProcess deste objeto DkmTransportConnection. Todos os objetos contêm a parte 'Live'. |
GetProcesses() |
GetProcesses enumera os elementos DkmProcess deste objeto DkmTransportConnection. |
GetProductionConnections() |
GetProductionConnections enumera os elementos DkmProductionConnection deste objeto DkmTransportConnection. Essa API foi introduzida no Visual Studio 15 Atualização 2 (DkmApiVersion.VS15Update2). |
GetRecordedProcesses() |
GetRecordedProcesses enumera os elementos DkmRecordedProcessInfo deste objeto DkmTransportConnection. Essa API foi introduzida no Visual Studio 16 RTM (DkmApiVersion.VS16RTM). |
GetRecordedProcessInfo(String) |
Obtenha informações sobre um arquivo gravado. Essa API foi introduzida no Visual Studio 16 RTM (DkmApiVersion.VS16RTM). |
GetRequests() |
GetRequests enumera os elementos DkmProcessLaunchRequest deste objeto DkmTransportConnection. |
GetRunningProcessInfo(Int32, Int64, Boolean, DkmRunningProcessInfoPropertyMask) |
Obtenha informações sobre um processo em execução no computador de destino. |
GetSerializedProcessInfo(String) |
Obtenha informações sobre um arquivo. Essa API foi introduzida no Visual Studio 16 Atualização 8 (DkmApiVersion.VS16Update8). |
GetSerializedProcessInformation() |
GetSerializedProcessInformation enumera os elementos DkmSerializedProcessInfo deste objeto DkmTransportConnection. Essa API foi introduzida no Visual Studio 16 Atualização 8 (DkmApiVersion.VS16Update8). |
GetSystemInformation(Boolean) |
Fornece informações sobre o computador em que o monitor de depuração está em execução. |
QueryExecutableArchitecture(String) |
Obtém a arquitetura do executável. Essa API foi introduzida no Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview). |
QueryIsWOW64Executable(String) |
Preterido. Use QueryExecutableArchitecture. Determina se o arquivo executável especificado será executado no WOW64 (Windows No Windows), que é usado para executar processos de 32 bits em um sistema operacional de 64 bits. |
RemoveAppPackageFromTaskbar(DkmAppPackageId, UInt32) |
Remove um ícone de aplicativo imersivo da barra de tarefas fechando-o. Essa API foi introduzida no Visual Studio 12 Atualização 3 (DkmApiVersion.VS12Update3). |
RemoveDataItem<T>() |
Remova a instância de 'T' desse contêiner. Geralmente, é desnecessário chamar esse método, pois um contêiner de dados será esvaziado automaticamente quando o objeto for fechado. (Herdado de DkmDataContainer) |
RemoveDirectory(String, Boolean) |
Remove um diretório no computador de destino. |
ResumeAppPackage(DkmAppPackageId, Int32) |
Executa um currículo de tempo de vida do processo simulado baseado no aplicativo especificado. Isso é usado pelos desenvolvedores para testar o manipulador de currículos do aplicativo. |
SetDataItem<T>(DkmDataCreationDisposition, T) |
Coloque um novo item no contêiner de dados. (Herdado de DkmDataContainer) |
ShutDownAppPackage(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmShutDownAppPackageAsyncResult>) |
Suspenda e desligue o aplicativo especificado usando os serviços de gerenciamento de tempo de vida do processo. Usando isso seguido por uma segunda inicialização de aplicativo, os desenvolvedores podem testar a capacidade do aplicativo de reiniciar do estado suspenso. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. |
SuspendAppPackage(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmSuspendAppPackageAsyncResult>) |
Executa uma suspensão simulada baseada no gerenciamento de tempo de vida do processo no aplicativo especificado. Isso é usado pelos desenvolvedores para testar o manipulador de suspensão do aplicativo. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. |
TakeNonDebugProcessSnapshot(UInt32) |
Usa um processo instantâneo de um processo. Os únicos dados retidos são os próprios instantâneo, não há referência a nenhum processo pai. Essa API foi introduzida no Visual Studio 17 Atualização 6 (DkmApiVersion.VS17Update6). |
TerminateAppPackage(DkmWorkList, DkmAppPackageId, Int32, DkmCompletionRoutine<DkmTerminateAppPackageAsyncResult>) |
Encerrar um pacote de aplicativos. Usado para garantir que todos os processos associados a um pacote tenham sido interrompidos. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará depois que o item de trabalho for acrescentado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. Essa API foi introduzida no Visual Studio 16 Atualização 9 (DkmApiVersion.VS16Update9). |
TerminateRunningProcess(Int32, Int64, Int32) |
Encerra um processo em execução no computador de destino que não está sendo depurado. |
TriggerPrefetch(String, DkmPackagedAppPlatform) |
Dispara a pré-busca de conteúdo do aplicativo. Essa API foi introduzida no Visual Studio 12 Atualização 2 (DkmApiVersion.VS12Update2). |