O Windows 7 e o Windows 2008 R2 potencialmente podem ter o WMF 2, WMF 3 ou WMF 4 instalado. O Windows 2012 pode ter WMF3 ou 4 e o 2012 R2 possui o WMF 4.
Estou procurando um método para descobrir qual versão está instalada. Espero que isso possa ser encontrado via WMI, para que eu possa usá-lo nos dois filtros de Diretiva de Grupo e, como verificação nos scripts do Powershell, estou pensando em criar que requeiram funcionalidade disponível apenas se o WMF 3 ou 4.
Devo estar fazendo a pergunta da maneira errada, porque não estou encontrando respostas no Google.
$PSVersionTable.PSVersion
sempre corresponde à versão do WMF instalada? Nesse caso, isso pode ser suficiente. Ser capaz de obter esse valor via WMI seria útil.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine
da versão 1 ou 2 e HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine
da versão 3 ou 4 ... abaixo do PowerShellVersion
valor. É isso que você procura?
$PSVersionTable.PSVersion
mas usando o WMI?