none
unreachable code detected C# RRS feed

  • Pergunta

  •            

    Gostaria de saber porquê me dá (unreachable code detected) quando eu tento continuar o código abaixo de "

      return temp;" ???

    string[] ResName = GetRes();
                for (int i = 0; i < ResName.Length; i++)
                {
                    Extract(@"Caminho Completo", "Folder", ResName[i]);
                }
            }




            static void Extract(string outDirectory, string internalFilePath, string resourceName)
            {
                const string nameSpace = "ConsoleApplication1";
                Assembly assembly = Assembly.GetCallingAssembly();
                using (Stream s = assembly.GetManifestResourceStream(nameSpace + "." + (internalFilePath == "" ? "" : internalFilePath + ".") + resourceName))
                using (BinaryReader r = new BinaryReader(s))
                using (FileStream fs = new FileStream(outDirectory + "\\" + resourceName, FileMode.OpenOrCreate))
                using (BinaryWriter w = new BinaryWriter(fs))
                    w.Write(r.ReadBytes((int)s.Length));

    } static string[] GetRes() { string[] temp = { "arquivos incorporados" }; return temp;

    já tentei isto mas sem sucesso https://www.dotnetperls.com/unreachable





    • Editado Flipcarloz sábado, 28 de janeiro de 2017 08:07
    sábado, 28 de janeiro de 2017 07:59

Respostas

  • Olá.
    Digamos que o compilador "testa" as condições/fluxo do seu programa, durante o processo de compilação pra código nativo.
    Ele dá essa mensagem em situações que um código NUNCA vai ser executado.

    Quando você da um return, você interrompe a execução do método,logo o que está abaixo dele nao vai ser executado.
    Nesse link que você colocou,o autor definia uma variavel com valor fixo, que nunca seria modificada e testava uma condição que nunca aconteceria,por isso esse aviso era informado no dele.
    O que ele fez, foi implementar uma diretiva que desabilitava o aviso.Mas ele continuaria ocorrendo em tempo de execução.

    A diretiva funciona pra ignorar o aviso,mas o problema vai dar da mesma forma, acho mais interessante rever o metodo que você está fazendo que está causando  o problema.

    • Editado Rodrigo Suleiman sábado, 28 de janeiro de 2017 12:29
    • Marcado como Resposta Flipcarloz sábado, 28 de janeiro de 2017 12:31
    sábado, 28 de janeiro de 2017 12:22
  • Olá,

    Você se refere a extrari um arquivo que você definiu como Embedded Resource?
    Caso positivo, tem esse(olhar a resposta,segundo post):
    http://stackoverflow.com/questions/13031778/how-can-i-extract-a-file-from-an-embedded-resource-and-save-it-to-disk


    • Editado Rodrigo Suleiman sábado, 28 de janeiro de 2017 12:37
    • Marcado como Resposta Flipcarloz sábado, 28 de janeiro de 2017 13:05
    sábado, 28 de janeiro de 2017 12:36

Todas as Respostas

  • Olá.
    Digamos que o compilador "testa" as condições/fluxo do seu programa, durante o processo de compilação pra código nativo.
    Ele dá essa mensagem em situações que um código NUNCA vai ser executado.

    Quando você da um return, você interrompe a execução do método,logo o que está abaixo dele nao vai ser executado.
    Nesse link que você colocou,o autor definia uma variavel com valor fixo, que nunca seria modificada e testava uma condição que nunca aconteceria,por isso esse aviso era informado no dele.
    O que ele fez, foi implementar uma diretiva que desabilitava o aviso.Mas ele continuaria ocorrendo em tempo de execução.

    A diretiva funciona pra ignorar o aviso,mas o problema vai dar da mesma forma, acho mais interessante rever o metodo que você está fazendo que está causando  o problema.

    • Editado Rodrigo Suleiman sábado, 28 de janeiro de 2017 12:29
    • Marcado como Resposta Flipcarloz sábado, 28 de janeiro de 2017 12:31
    sábado, 28 de janeiro de 2017 12:22
  • ok obrigado. mas existe outra forma de extrair os arquivos?
    sábado, 28 de janeiro de 2017 12:32
  • Olá,

    Você se refere a extrari um arquivo que você definiu como Embedded Resource?
    Caso positivo, tem esse(olhar a resposta,segundo post):
    http://stackoverflow.com/questions/13031778/how-can-i-extract-a-file-from-an-embedded-resource-and-save-it-to-disk


    • Editado Rodrigo Suleiman sábado, 28 de janeiro de 2017 12:37
    • Marcado como Resposta Flipcarloz sábado, 28 de janeiro de 2017 13:05
    sábado, 28 de janeiro de 2017 12:36
  • Resolvido obrigado :)
    sábado, 28 de janeiro de 2017 15:42
  • poderia me ajudar com isto se for possivel?

    https://social.msdn.microsoft.com/Forums/pt-BR/63a5c0a3-21ad-4e5b-a647-741d28538191/ler-e-analisar-um-arquivo-ini-em-c?forum=vscsharppt#5f6c17d5-6472-4246-a08e-c04a382671c5

    domingo, 29 de janeiro de 2017 11:54