locked
Comparar versões entre dois arquivos RRS feed

  • Pergunta

  • Bom dia,

    Gostaria de saber se há uma formar de comparar a versão de dois arquivos e retornar se uma é maior que a outra.

    Hoje, estou fazendo isso pela classe FileVersionInfo. Dessa forma eu obtenho a versão através do método GetVersionInfo, mais para comparar tenho que quebrar a versão em partes e avaliar uma a uma. 

    Queria saber se há uma forma mais eficiente de fazer esta comparação.

    Desde já agradeço.

    Gabriel Alves

    quarta-feira, 5 de março de 2014 11:22

Respostas

  • Boa tarde, Gabriel,

    Acredito que o que você tem que fazer, é escolher qual version que você comprar (FileVersion, ProductVersion), e usar o Version.Parse, que lhe retornará um objeto do tipo Version, para o qual os operadores de comparação estão definidos.

    Exemplo:

    var v1 = Version.Parse(FileVersionInfo.GetVersionInfo(@"C:\Windows\System32\User32.dll").ProductVersion);

    var v2 = Version.Parse(FileVersionInfo.GetVersionInfo(@"C:\Windows\System32\Kernel32.dll").ProductVersion);

    if(v1 < v2)

    {

       // Faça alguma coisa

    }

    Atencisamente,

    Eduardo A. C. de Sousa

    • Marcado como Resposta galves.rod quarta-feira, 7 de maio de 2014 12:59
    quinta-feira, 1 de maio de 2014 17:09

Todas as Respostas

  • Boa tarde, Gabriel,

    Acredito que o que você tem que fazer, é escolher qual version que você comprar (FileVersion, ProductVersion), e usar o Version.Parse, que lhe retornará um objeto do tipo Version, para o qual os operadores de comparação estão definidos.

    Exemplo:

    var v1 = Version.Parse(FileVersionInfo.GetVersionInfo(@"C:\Windows\System32\User32.dll").ProductVersion);

    var v2 = Version.Parse(FileVersionInfo.GetVersionInfo(@"C:\Windows\System32\Kernel32.dll").ProductVersion);

    if(v1 < v2)

    {

       // Faça alguma coisa

    }

    Atencisamente,

    Eduardo A. C. de Sousa

    • Marcado como Resposta galves.rod quarta-feira, 7 de maio de 2014 12:59
    quinta-feira, 1 de maio de 2014 17:09
  • Bom dia Eduardo,

    Sua solução funcionou perfeitamente, Obrigado.

    Gabriel Rodrigues Alves

    quarta-feira, 7 de maio de 2014 13:00