Durante a versão beta do Windows 10, era difícil saber qual versão você estava executando, a menos que ela fosse postada na área de trabalho. Uma vez que não estava lá - como você diz qual versão / build você está executando?
Isso se tornará mais um problema, pois a Microsoft começa a lançar mais compilações com o novo mecanismo de atualização.
Respostas:
GUI: Configurações, Sistema, Sobre
Não tenho certeza se esse é o caminho 'adequado', mas você pode obter a 'versão' vocalizada / comentada do Win10 (1511, 1607 etc.) através deste cmd:
Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ReleaseId
Aqui está a página da Microsoft para correlacionar os números de compilação à 'versão' do Win10 ( link de backup [wiki] apenas no caso ). Ajudou-me quando recebo o build # do PC remoto:
wmic /node:HOSTNAME os get BuildNumber
fonte
(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ReleaseId).ReleaseId
ReleaseId REG_SZ 1803
. Este e este obras(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name CurrentBuildNumber).CurrentBuildNumber
ou(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name CurrentBuild).CurrentBuild
para o número de compilaçãoVerificar a versão ou o número da compilação do Windows 10 não é muito útil, pois não muda com o tempo.Acontece que a primeira frase está errada; isso era verdade em todas as versões anteriores do Windows, mas agora estamos em um novo mundo do Windows 10. A última insiders compilação tem um número de compilação de
10525
comparação com "RTM":10240
.Existem várias maneiras de obter o número da compilação na linha de comando:
O último dos três é o mais rápido.
Se você preferir a GUI, poderá usar o winver.exe ou a
About
entrada noHelp
menu da maioria dos aplicativos da área de trabalho do Windows.Com nenhum service pack disponível, o nível do patch no sistema operacional depende das atualizações instaladas. Existem várias maneiras de encontrar essas, GUI, systeminfo.exe, wmi, etc.
A maneira recomendada e mais poderosa de fazer coisas assim é usar o PowerShell:
mostra algo como:
Você pode filtrar por atualizações nos últimos 10 dias:
Ou mostre as três últimas atualizações instaladas:
Você pode verificar se uma atualização específica está instalada:
Você pode encontrar o número do patch kb mais recente on-line, como:
E depois verifique se existe na máquina.
Nota: este é apenas um exemplo. Não conheço uma página que atualmente as lista e você ainda precisa analisá-la.
A questão é: com o tempo, a Microsoft alterará tanto a funcionalidade do Windows 10 que você precisará verificar se o aplicativo ou script funciona.
Pode ser uma idéia melhor verificar se um recurso específico que você precisa existe no sistema, em vez de procurar um número de versão.
fonte
No momento, o WMI não possui propriedades que possam ser usadas para identificar completamente a versão do Windows 10 (como 1607) ou o número de compilação completo (como 10.0.14393.577). Conforme declarado em outros comentários, essas informações são visíveis no registro sob esta chave:
Os seguintes valores nessa chave correspondem às informações exibidas pelo programa winver.exe:
Além disso, os números de versão estão nesses dois valores dessa chave do Registro:
A construção muda quando a Versão (como 1607) muda ou quando as construções do Insider são instaladas. No entanto, o UBR (Update Build Revision) muda com determinadas atualizações, conforme indicado na lista de versões da Microsoft .
No PowerShell,
retorna Maior, Menor e Construa o mesmo que a chave do Registro, mas sempre parece reportar a Revisão como 0. Um pouco de código de um usuário do Reddit fornece uma substituição adequada que inclui o UBR do Registro como o número da Revisão:
fonte
Me pediram isso algumas vezes, então pensei em publicá-lo. Existem três maneiras.
Para obter mais detalhes, consulte aqui: http://mythoughtsonit.com/2015/07/what-build-version-of-windows-10-am-i-running/
fonte
WMIC QFE GET HotfixID, InstalledOn, Description | FINDSTR /I "KB3081438"
para determinar se a UC de 15 de agosto de 2015 está instalada. Uma data InstalledOn em branco indica que o sistema não foi reiniciado para concluir a instalação.Nenhuma das formas postadas anteriormente funciona e nenhuma delas fornece o SO Build como aparece na seção Configurações → Sobre . Faltam as informações de atualização cumulativa.
Você poderia fazer algo assim
em um script do PowerShell, mas é necessário algo que sempre foi uma linha e torna mais difícil o monitoramento. Você pode ver as atualizações aqui:
Histórico de atualizações do Windows 10
Espero que a Microsoft atualize seus patches para começar a modificar o BuildNumber.
fonte
Win32_OperatingSystem.Version
deveria funcionar da maneira que você descreve, mas a compilação está mudando porwinver
(em outras palavras, estou dizendo que seu script está com falha).O msinfo32.exe ainda está por aí (a partir de 8.1)? Dá muitas informações úteis, incluindo números de série e números de modelo, o que pode ajudar bastante em laptops.
fonte
Você pode extrair a versão do registro. Aqui está um snipit do PowerShell para fazer isso:
fonte
O PowerShell é sempre a resposta:
Mais Informações:
Devoluções:
Você pode usá-lo para obter rapidamente essas informações, além disso, pode transformá-las em uma função e usá-las para obter essas informações de toda a sua frota, se necessário.
fonte
Em um domínio do AD, você pode usar o cmdlet Get-ADComputer do PowerShell
fonte
Você pode usar a consulta de registro em um comando FOR para obter o Buildversion, por exemplo, 1607:
fonte
Ao tentar encontrar uma maneira de exibir a versão do Windows 10 e sua revisão para um único computador remoto, notei que a revisão da versão do PowerShell seguia a revisão do Windows.
Isso me levou a criar o seguinte script. Adicionei um teste para saber se o computador remoto precisa reiniciar para concluir a atualização.
Isso fornece este tipo de resultado:
Em um domínio do AD , você pode substituir o seu <Computer_Name> único por uma variável que contém todos os computadores de uma UO.
fonte
Write-Host "Version $((Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").ProductName) $((Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").ReleaseId), revision $(($PSVersionTable).PSVersion.Revision)"
, mas ele me forneceWindows 10 Pro 1803, revision 1000
10.0.17730.1000, que está incorreto. A versão de compilação é 17730Precisamos verificar qual patch cumulativo está instalado para conformidade. O uso de get-hotfix funciona, mas causa problemas se um patch cumulativo posterior estiver instalado. A melhor solução é comparar o número da compilação, incluindo a parte do hotfix. A única maneira de obter isso pela linha de comando é usar o comando ver prompt de comando que não funciona diretamente no PowerShell.
fonte