none
Caracteres especiais no OutputStream RRS feed

  • Pergunta

  •  

    Oi

     

    Eu estou com o seguinte problema. eu uso a classe Process pra executar o arquivo rasdial.exe e iniciar uma conexão e eu redireciono a saída para a tela do programa. O problema é que a saída do rasdial.exe contém caracteres especiais e no StreamReader que retorna na classe Process esses caracteres não aparecem.

    Alguem sabe como contornar esse problema??

     

    Exemplo de código:

     

    Code Snippet

     

    ProcessStartInfo processInfo = new ProcessStartInfo();

    Process proc = new Process();

     

    processInfo.WindowStyle = ProcessWindowStyle.Hidden;

    processInfo.UseShellExecute = false;

    processInfo.CreateNoWindow = true;

    processInfo.FileName = "rasdial.exe";

    processInfo.Arguments = "conexao";

    processInfo.RedirectStandardOutput = true;

     

    proc = Process.Start(processInfo);

    proc.WaitForExit();

     

    rtxtResult.AppendText(proc.StandardOutput.ReadToEnd());

     

    proc.Close();

     

     

     

    quinta-feira, 9 de agosto de 2007 11:58

Todas as Respostas

  • Tive um problema parecido que foi resolvido na definição do StreamReader conforme abaixo:

     

    Dim LEITOR As New StreamReader(ARQUIVO, Encoding.GetEncoding("ISO-8859-1"))

     

     

    Veja se resolve o seu caso, até

    sábado, 11 de agosto de 2007 23:03
  • Oi Emerson

     

    Infelizmente isso não resolveu meu problema. Pelo que eu andei pesquisando na net na hora de redirecionar o Output o .net usa o Encoding padrão de Console. Que não contém os caracteres especiais, e mesmo usando:

     

    Code Snippet

    process.StartInfo.StandardErrorEncoding = Encoding.GetEncoding("ISO-8859-1");

     

     

    ele ignora esse encoding e usa o encoding padrão do console. Segundo vários sites esse é um problema do .net mesmo e não tem como resolver.

    postei aqui para ver se alguem daqui já tinha conseguido alguma forma de contornar esse problema.

     

    mas obrigado pela dica

     

     

     

     

     

    segunda-feira, 13 de agosto de 2007 11:58