Compartilhar via


Microsoft.VisualStudio.Utilities.Internal Namespace

Classes

AsyncHttpWebRequest

Wrapper de solicitação HttpWeb

CodeContract

CodeContract é usado para validar parâmetros de entrada

DictionaryExtensions

Vários métodos de extensão de dicionário.

FileBasedRegistry
FileBasedRegistryTools

Implementação baseada em arquivo de IRegistryTools que usa o FileBasedRegistry para Unix/MacOS. Não há suporte para o registro no nível do computador.

MacNativeMethods

Classe que contém todas as definições de PInvoke que usamos na Biblioteca de Telemetria que são usadas no macOS.

ObjectExtensions

Métodos de extensões de objeto

Platform

Determina em qual plataforma o processo está sendo executado.

RegistryTools

Classe auxiliar para obter informações do Registro

RegistryValue

Contém um valor de registro serializável para o FileBasedRegistry compatível com Mono

RegistryValues

Contém valores de registro serializáveis para o FileBasedRegistry compatível com Mono

ReparsePointAware

Coleção de funções de utilitário de Arquivo e Diretório que garantem que os arquivos e pastas que estão sendo interagidos não tenham pontos de nova análise do Windows em seus caminhos e que os caminhos no código correspondam aos caminhos reais no disco.

A injeção de ponto de nova análise é um vetor conhecido/comum de explorações de segurança. Confira aqui para obter mais informações gerais sobre eles: https://docs.microsoft.com/en-us/windows/win32/fileio/reparse-points

A meta desse conjunto de funções é obter um identificador de arquivo do Windows, verificar se ele está no caminho esperado e, em seguida, fazer todas as operações de arquivo com o mesmo identificador. NÃO é um padrão seguro verificar o arquivo e executar operações adicionais usando o caminho do arquivo, pois um invasor pode explorar a corrida entre o marcar do arquivo e a operação de arquivo com base no caminho do arquivo. Essa classe de ataque é conhecida como TOCTOU (Tempo de Verificação/Tempo de Uso). Para evitar isso, essa classe manterá o identificador de arquivo e executará todas as operações no identificador depois que ele for considerado no local correto. Como todas as operações são baseadas no identificador de arquivo, sabemos que estamos modificando o arquivo que verificamos estar correto.

StreamedHttpWebResponse

Wrapper de resposta HttpWeb com implementação de fluxo.

StringExtensions

Estender vários métodos de cadeias de caracteres

TaskExtensions

Extensões de tarefa

Estruturas

MacNativeMethods.OSVersionInfo
MacNativeMethods.SystemInfo

Interfaces

IAsyncHttpWebRequest

Interface de wrapper de solicitação HttpWeb.

IRegistryTools

Classe auxiliar para obter informações do Registro

IRegistryTools2
IRegistryTools3
IRegistryTools4
IStreamedHttpWebResponse

Interface do wrapper de resposta HttpWeb.

Enumerações

ErrorCode

Possíveis códigos de erro para resposta.