Metode untuk Mendeteksi versi Kerangka Manajemen Windows

12

Windows 7 dan Windows 2008 R2 berpotensi dapat menginstal WMF 2, WMF 3 , atau WMF 4 . Windows 2012 dapat memiliki WMF3 atau 4, dan 2012 R2 memiliki WMF 4.

Saya mencari metode untuk menemukan versi mana yang diinstal. Mudah-mudahan ini dapat ditemukan melalui WMI, jadi saya dapat menggunakannya dalam kedua filter Kebijakan Grup, dan sebagai cek dalam skrip Powershell saya berencana membangun yang memerlukan fungsionalitas hanya tersedia jika WMF 3 atau 4.

Saya pasti mengajukan pertanyaan dengan cara yang salah karena saya tidak menemukan jawaban di Google.

Sakit kepala
sumber
Apakah Anda bertanya bagaimana menjalankan sesuatu seperti $PSVersionTable.PSVersiontetapi menggunakan WMI?
TheCleaner
Apakah versi $PSVersionTable.PSVersionselalu sesuai dengan versi WMF yang diinstal? Jika demikian, itu mungkin cukup. Mampu mendapatkan nilai itu melalui WMI akan sangat membantu.
Zoredache
Bukankah $ PSVersionTable.WSManStackVersion untuk versi WMF?
ErikE
@ErikE - Saya kira itu tergantung pada apakah dia membutuhkan versi Host atau versi Powershell yang sebenarnya.
TheCleaner
2
@Zoredache - Jika Anda mencari cara untuk memastikan Anda dapat menjalankan skrip GPO atau PS terhadap komputer, saya pikir Anda harus terlebih dahulu menentukan apakah Powershell bahkan diinstal dan versi yang mana. Ini dapat dilakukan melalui registri HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngineuntuk ver 1 atau 2, dan HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngineuntuk ver 3 atau 4 ... di bawah PowerShellVersionnilai. Itukah yang Anda cari?
TheCleaner

Jawaban:

9

Jika Anda mencari cara untuk memastikan Anda dapat menjalankan skrip GPO atau PS terhadap komputer, saya pikir Anda harus terlebih dahulu menentukan apakah Powershell bahkan diinstal dan versi yang mana. Ini dapat dilakukan melalui registri HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngineuntuk ver 1 atau 2, dan HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngineuntuk ver 3 atau 4 ... di bawah nilai PowerShellVersion. Itukah yang Anda cari?

Variabel Powershell: $ PSVersionTable.PSVersion juga menyimpan info tentang WMF.

Pembersih
sumber
WMF alias versi Powershell adalah larik: "PSCompatibleVersions {1.0, 2.0, 3.0, 4.0}".
AnneTheAgile
6

Anda cukup memasukkan "host" di Powershell Anda akan dapat melihat versi "Windows Management Framework".

PS> (host).Version
Major  Minor  Build  Revision
-----  -----  -----  --------
4      0      -1     -1      
Mahesh27
sumber
0

Paket instalasi untuk PowerShell hadir di dalam pemasang WMF. Versi penginstal WMF cocok dengan versi PowerShell; tidak ada penginstal yang berdiri sendiri untuk Windows PowerShell.

Versi PS = Versi WMF

Jika Anda perlu memperbarui versi PowerShell yang ada, di Windows, gunakan tabel berikut untuk menemukan penginstal versi PowerShell yang ingin Anda perbarui.

Windows PS 3.0 PS 4.0 PS 5.0 PS 5.1 Windows 10 (lihat Note1) Windows Server 2016 - - - menginstal Windows 8.1 Windows Server 2012 R2 - WMF yang diinstal 5.0 WMF 5.1 Windows 8 Windows Server 2012 yang diinstal WMF 4.0 WMF 5.0 WMF 5.0 WMF 5.1 Windows 7 SP1 Windows Server 2008 R2 SP1 WMF 3.0 WMF 4.0 WMF 5.0 WMF 5.1

https://docs.microsoft.com/en-us/powershell/scripting/install/installing-windows-powershell?view=powershell-5.1

SebbV
sumber