Bagaimana Anda memeriksa untuk melihat versi Windows Management Framework (WMF) apa yang diinstal? Sepertinya itu harus menjadi hal yang sederhana untuk mengetahuinya, tetapi aku tidak bisa. Bahkan Googling sekelompok versi yang berbeda dari pertanyaan itu ternyata tidak ada artinya.
Itu tidak ada di appwiz.cpl, dan regedit tidak menemukan apa pun untuk "Kerangka Manajemen Windows" dan ia menemukan terlalu banyak hal-hal asing untuk "wmf"
Saya hanya ingin tahu bagaimana memeriksanya sama sekali, dengan cara apa pun yang masuk akal. Apakah ada kunci registri untuk itu? Apakah ada file yang bisa saya periksa? Apa pun???
Hal terdekat yang bisa saya temukan ada di serverfault: Metode untuk Mendeteksi versi Kerangka Manajemen Windows . Pertanyaan itu dimulai dari hal yang sama, tetapi tampaknya meminta cara pemeriksaan khusus untuk digunakan dalam GPO; mungkin itu sebabnya tidak mendapat jawaban.
Ada beberapa komputer yang ingin saya periksa. Yang saya mulai adalah Windows Server 2008 R2 Standard. Akan ada sistem operasi Windows Server lainnya juga.
Jika Anda mengetahui adanya tag yang berfungsi lebih baik dari yang saya miliki, beri komentar atau retag; Saya tidak dapat menemukan apa pun yang menggambarkan pertanyaan ini dengan baik.
Pembaruan: Beberapa orang tampaknya berpikir bahwa " $PSVersionTable
" (dan / atau berbagai properti itu) adalah jawaban. Saya akhirnya menyadari baru-baru ini bahwa ini adalah variabel PowerShell (mungkin awalan 'PS' seharusnya memberikannya untuk saya, tetapi tidak) dan mencoba menggali lebih dalam. Ini menghasilkan pertanyaan lain: Apa isi dari $ PSVersionTable PowerShell mewakili? .
Update2: Berdasarkan pada semua informasi yang saya kumpulkan sekarang dan pemahaman saya yang lebih baik, saya cukup yakin bahwa variabel bawaan PowerShell $PSVersionTable.PSVersion
bukanlah jawaban untuk hal ini secara teknis, tetapi sering kali (kadang-kadang? Selalu? Tidak yakin) the sama, seperti dalam versi mungkin berjalan seiring. The $PSVersionTable.WSManStackVersion
variabel mungkin apa yang saya inginkan, tapi deskripsi singkat resmi yang menunjukkan properti sebagai mewakili tumpukan WS-Manajemen. Apakah tumpukan WS-Management sama dengan WMF? Googling menyarankan mereka terkait erat, tetapi saya tidak yakin apakah jawabannya ya.
sumber
$PSVersionTable.PSVersion
tetapi menggunakan WMI?" bukan jawaban. Apa artinya itu? Jika Anda dapat mengambil komentar itu dan mengubahnya menjadi jawaban yang sebenarnya dapat digunakan, saya akan sangat menghargainya. Apakah ini$PSVersionTable.PSVersion
variabel dari beberapa jenis yang tersedia di suatu tempat? Jika ya, apakah dijamin versi WMF? Saya mencobaecho $PSVersionTable.PSVersion
dan mendapatkan hasil$PSVersionTable.PSVersion
echo $PSVersionTable.PSVersion
dan mendapatkan hasil$PSVersionTable.PSVersion
- apa yang Anda bingung dalam komentar / jawaban saya pada pertanyaan lain?Jawaban:
Lihat dokumentasi ini dari Microsoft:
https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-windows-powershell?view=powershell-5.1
Di bagian "Memutakhirkan Windows Powershell yang ada", ia mengatakan secara khusus:
Saya kira inilah jawabannya kawan. Jalankan
$PSVersionTable.PSVersion
untuk mendapatkan versi.sumber
Saya tahu ini adalah pertanyaan lama, tetapi untuk orang lain yang menemukan ini dari Google Penelusuran:
Saya ingin berargumen bahwa itu
$PSVersionTable.PSVersion
adalah indikator yang paling dapat diandalkan dari versi WMF. Lihat contoh di bawah ini.Instalasi baru Windows 7:
Windows 7 setelah instalasi .NET 4.5 dan WMF 4:
Windows 7 setelah instalasi WMF 5:
Windows 10, yang menyertakan WMF 5 di luar kotak:
Jadi seperti yang Anda lihat, versi untuk
$PSVersionTable.WSManStackVersion.Major
hanya tampaknya berubah pada instalasi WMF 4 dan kemudian tetap pada 3. Sementara$PSVersionTable.PSVersion.Major
tampaknya melaporkan versi akurat dari WMF.sumber
Di PowerShell tersedia dari
$PSVersionTable.WSManStackVersion.Major
Sistem Windows 7 rumah saya:
Kemudian setelah menginstal Kerangka Manajemen Windows yang lebih baru:
sumber
WSManStackVersion
awalnya 3.0, dan tetap di 3.0. Saya pikir panduan terbaik adalah dua komponen pertamaPSVersion
yang akan sama dengan versi WMF.Jika sudah diinstal, Anda akan menemukannya di "appwiz.cpl". Ingatlah untuk melihat di bawah "Lihat pembaruan yang diinstal", karena WMF didistribusikan sebagai pembaruan Windows dengan nomor KB unik untuk berbagai versi Windows.
sumber
Anda memeriksa untuk melihat apa versi Windows Management Framework (WMF) yang diinstal dengan mengidentifikasi nomor KB dari versi yang Anda periksa dan kemudian menggunakan, dalam hal ini, permintaan wmic, untuk menentukan apakah nomor KB telah diinstal. Semua contoh ini didasarkan pada penggunaan cmd.exe untuk menjalankan perintah.
** Perintah untuk Memeriksa WMF 4.0
** Contoh menjalankan perintah:
Dalam contoh di atas, WMF 4.0 diinstal: KB dikembalikan dari kueri wmic dan kode pengembalian nol.
** Perintah untuk Memeriksa WMF 5.0
** Contoh menjalankan perintah:
Jadi dalam contoh di atas WMF 5.0 tidak diinstal: tidak ada yang dikembalikan dari kueri wmic dan kode pengembalian non-nol.
Mungkin saja Anda menggunakan KB yang berbeda untuk menginstal level WMF tertentu, tetapi inilah yang sedang saya kerjakan saat ini.
Dan saya selalu memeriksa PowerShell (yang diinstal atau ditingkatkan sebagai bagian dari WMF):
Ada masalah ketika memutakhirkan ke WMF 4.0 (dan sekali lagi nanti ke 5.0) jika .NET 4.5 tidak diinstal jadi jika perintah PS menghasilkan kesalahan, Anda mungkin harus menginstal .NET 4.5.
sumber