Sintomas
Quando tiver um projecto que visa explicitamente o .NET Framework 4.6.2 ou que desactiva o parâmetro AppContext Switch.System.IO.UseLegacyPathHandling, Path.GetDirectoryName() e Path.GetPathRoot() accione uma excepção de caminho inválido quando estes são transmitidos um URI (tal como http://).
Causa
Este problema ocorre porque a mesma verificação de exactidão de dois pontos, que é utilizada para o resto das APIs do caminho foi adicionada incorrectamente a estas dois APIs, que normalmente tolerar sintaxe URI.
Resolução
Para contornar este problema, remova o prefixo URI antes de chamar estas API. Ou, defina o parâmetro AppContext Switch.System.IO.UseLegacyPathHandling=true.
A equipa do .NET Framework está a funcionar para fornecer uma correcção para este problema no futuro versões do produto.
Para mais informações, consulte o .NET Framework 4.6.2 problemas conhecidos.
Mais informações
Para mais informações, consulte compatibilidade de aplicações no .NET Framework 4.6.2.