Usuário com melhor resposta
FileInfo : Não há suporte para o formato do caminho dado. (?)

Pergunta
-
Bom dia amigos(a),
Estou tentando obter a versão de um aplicativo (.exe) que se encontra em um determinado endereço/FTP.
// OBTENDO VERSÃO DO EXECUTÁVEL NO FTP (LOCAL) WebClient request = new WebClient(); string url = vGLOBALFTPAPP + "App.exe"; request.Credentials = new NetworkCredential(vGLOBALUSERFTP, vGLOBALPASSFTP); var infoVLiteFTP = FileVersionInfo.GetVersionInfo(url); vVERSAOHCLFTP = infoVLiteFTP.ProductVersion; var vVHCLAPP = new Version(vVERSAOHCLAPP); var vVHCLFTP = new Version(vVERSAOHCLFTP); var rHCL = vVHCLAPP.CompareTo(vVHCLFTP);
Da forma que está descrita acima funciona somente se eu estiver conectado na rede. Quando tento obter a versão do aplicativo pelo endereço externo "ftp://...", o seguinte exception é exibido:
'Não há suporte para o formato do caminho dado.'
Obrigado pela atenção pessoal,
Att.
Respostas
-
Olá bom dia,
A exception está acontecendo na chamada do método GetVersionInfo?
O problema é que esse método só aceita endereços locais mesmo ou de rede (https://msdn.microsoft.com/pt-br/library/system.diagnostics.fileversioninfo.getversioninfo%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396. As bibliotecas de arquivo do .NET só interagem com arquivos que estejam no mesmo ambiente (local ou rede). O que você precisa fazer é baixar o arquivo do FTP primeiro, depois disso, você faz o que está planejando usando o GetVersionInfo.
Abaixo um exemplo de como usar a biblioteca de FTP do .NET:
http://www.c-sharpcorner.com/UploadFile/0d5b44/ftp-using-C-Sharp-net/
Rafael Esquiçato Professional Scrum Master MCP, MCTS
- Marcado como Resposta developer.training sexta-feira, 8 de setembro de 2017 13:22
Todas as Respostas
-
Olá bom dia,
A exception está acontecendo na chamada do método GetVersionInfo?
O problema é que esse método só aceita endereços locais mesmo ou de rede (https://msdn.microsoft.com/pt-br/library/system.diagnostics.fileversioninfo.getversioninfo%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396. As bibliotecas de arquivo do .NET só interagem com arquivos que estejam no mesmo ambiente (local ou rede). O que você precisa fazer é baixar o arquivo do FTP primeiro, depois disso, você faz o que está planejando usando o GetVersionInfo.
Abaixo um exemplo de como usar a biblioteca de FTP do .NET:
http://www.c-sharpcorner.com/UploadFile/0d5b44/ftp-using-C-Sharp-net/
Rafael Esquiçato Professional Scrum Master MCP, MCTS
- Marcado como Resposta developer.training sexta-feira, 8 de setembro de 2017 13:22
-