none
Webclient Exception RRS feed

  • Pergunta

  • Boas, estou a usar um webclient para baixar um ficheiro do meu servidor FTP.

    Acontece que umas vezes tudo corre bem e outras não... sendo que quando corre mal aparece uma mensagem:

    'Excepção durante um pedido WebClient. O processo não pode aceder ao ficheiro 'c:\MaxGest\update.txt' porque está a ser utilizado por outro processo.

    Como disse isto nem sempre acontece... inclusive utilizei o metodo DownloadFileASync e acontece o mesmo.

    WebClient webcliente = new WebClient();
                    webcliente.Credentials = new NetworkCredential("xxxx", "xxxx);
                    webcliente.DownloadFile("ftp://xxxx.com/update.txt", @"c:\MaxGest\update.txt");
                    StreamReader rd = new StreamReader(@"c:\MaxGest\update.txt");
                    versao_servidor = rd.ReadLine();

    Alguem me consegue dar uma ajuda?

    Cumprimentos

    sábado, 17 de junho de 2017 18:49

Respostas

  • Olá,

    Dá um dispose no webcliente e depois pede para aguarda alguns segundos antes de ler o arquivo. olha se resolve. Pode ser algum antivírus lendo esse arquivo também.

    WebClient webcliente = new WebClient(); webcliente.Credentials = new NetworkCredential("xxxx", "xxxx); webcliente.DownloadFile("ftp://xxxx.com/update.txt", @"c:\MaxGest\update.txt"); webcliente.Dispose(); Thread.Sleep(5000); StreamReader rd = new StreamReader(@"c:\MaxGest\update.txt"); versao_servidor = rd.ReadLine();

    rd.Dispose();





    domingo, 18 de junho de 2017 13:44
    Moderador

Todas as Respostas

  • Olá,

    Dá um dispose no webcliente e depois pede para aguarda alguns segundos antes de ler o arquivo. olha se resolve. Pode ser algum antivírus lendo esse arquivo também.

    WebClient webcliente = new WebClient(); webcliente.Credentials = new NetworkCredential("xxxx", "xxxx); webcliente.DownloadFile("ftp://xxxx.com/update.txt", @"c:\MaxGest\update.txt"); webcliente.Dispose(); Thread.Sleep(5000); StreamReader rd = new StreamReader(@"c:\MaxGest\update.txt"); versao_servidor = rd.ReadLine();

    rd.Dispose();





    domingo, 18 de junho de 2017 13:44
    Moderador
  • Bom dia,

    Por falta de retorno esta thread esta encerrada !

    Por gentileza, caso necessário abra uma nova thread.

    Atenciosamente,


    Guilherme Macedo S

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    TechNet Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    segunda-feira, 26 de junho de 2017 12:46
    Moderador