Existe alguma maneira de diferenciar esses dois definitivamente?
Sei que posso procurar uma barra de tarefas ou um botão liga / desliga na tela Iniciar, mas estou mais interessado em saber se existe algum lugar que realmente exiba o 8.1 Update 1. Sei que o MS tem essa página , mas uma maneira programática de detectá-la seria legal, especialmente porque as ISOs mais recentes têm a atualização incorporada.
Até onde eu sei, a saída ver
e wmic os
a mesma entre o Windows 8.1 e o Windows 8.1. Atualização 1 e as propriedades do sistema ainda reporta o Windows 8.1.
windows-8.1
Ernie
fonte
fonte
ver
saída (6.3.9600) e é a mesma para ambas. O problema que estou tentando resolver é apenas saber quais sistemas temos em nosso laboratório e qual sistema operacional eles estão executando. . . para cobertura de teste completo, queremos manter ambos 8.1 e 8.1 com Update 1ver
saída e registro são idênticas. O método wmic / findstr parece que funcionará (mesmo em sistemas que foram instalados a partir das novas ISOs), embora seja feio como o pecado (especialmente porque basicamente será uma verificação secundária após umaver
verificação). . . postar isso como resposta e eu aceito. . .Respostas:
Soluções possíveis
Abaixo, há alguns scripts em lote que podem verificar se o sistema operacional é o Windows 8.1, com ou sem KB2919355 . O código de saída será um dos seguintes:
0
: Windows 8.11
: Atualização do Windows 8.1 (KB2919355 instalado)2
: Não é o Windows 8.1Script de lote A - verificação de atualização
Esta é a maneira mais confiável. O script primeiro verifica se o sistema operacional é o Windows 8.1, comparando a versão com
6.3.9600
. Todas as atualizações instaladas são consultadas para verificar se a atualização KB2919355 já foi instalada.Script em lote B - verificação da versão de compilação
Como alternativa, você pode verificar a versão de compilação do Windows, que é mais rápida que o primeiro script, porque você não precisa enumerar todas as atualizações. Como ele usa um valor do registro, pode não ser tão confiável.
Script em lote C - verificação da versão de compilação (Internet Explorer)
Assim como o script anterior, aqui o conceito é semelhante, exceto que a versão do Internet Explorer (IE) é marcada.
Nota O script pressupõe que qualquer versão do IE superior ou igual a 12 esteja disponível em um sistema Windows 8.1 com a atualização KB2919355 instalada.
Dado o exposto, é razoável pensar que qualquer versão mais recente do IE exigiria a atualização como pré-requisito, assim como o SP2 é necessário para instalar o IE 9 no Windows Vista .
fonte
Analisar a
BuildLabEx
sequênciae se o número for maior do que
17031
os usuários têm a Atualização 1 instalada.fonte
BuildLab
não é atualizado;BuildLabExe
é.BuildLab
. Meu comentário explica a diferença entre os dois, pois aEx
parte deBuildLabEx
está oculta na ampliação de texto padrão de 100% do script.Utilizamos um utilitário de linha de comando chamado WuInstall ( http://www.wuinstall.com ) que faz algumas coisas úteis sobre a aplicação de patches, entre elas a habilitação de scripts em lote para verificar se as atualizações estão instaladas
Linha de comando para mostrar todas as atualizações instaladas
WUInstall.exe / search / criterios "IsInstalled = 1" / offline
Para verificar se um determinado KB está instalado (existem muitas opções de filtragem), você pode verificar:
WUInstall.exe / search / critérios "IsInstalled = 1" / offline / correspondência "KB982214"
O utilitário produz alguma saída de linha de comando, que pode ser redirecionada para um arquivo xml com uma opção chamada / xmlout ou apenas redirecionada para um arquivo com, por exemplo,> out.txt
fonte
Simplesmente procuro uma pasta "winstore" no Windows, pois notei que há uma diferença flagrante em todas as versões do Windows.
Pode até executar o comando WinStore para vê-lo.
REM Simulando a verificação do SO: Instale c: cd \ se existir "c: \ windows \ WinStore" para WIN8
: Código específico do Win8 REM para uma máquina win8
fonte