Wie kann ich die Kategorien von den Updates anzeigen die vom Typ
System.__ComObject System.__ComObject
sind?
PS C:\Windows\system32> $Session = New-Object -ComObject Microsoft.Update.Session $Searcher = $Session.CreateUpdateSearcher() $Res = $Searcher.search("IsInstalled=1 and RebootRequired=0 and Type='Software'") foreach ($Update in $Res.Updates) { # Description # Categories ComObj # IsDownloaded # IsInstalled # IsUninstallable # Languages $o = @{ Title = $Update.Title Downloaded = $Update.IsDownloaded Installed = $Update.IsInstalled Languages = $Update.Languages -Join ", " Categories = $Update.Categories -Join ", " } $o } Name Value ---- ----- Categories System.__ComObject System.__ComObject Title MSXML 6.0 RTM Sicherheitsupdate (925673) Downloaded True Installed True Languages en ja ko zh-tw zh-cn it de es fr pt-br nl ru sv Categories System.__ComObject System.__ComObject Title Update für Windows Defender Antivirus-Antischadsoftwareplattform – KB4052623 (Version 4.18.2001.10) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title 2023-02 Kumulatives Update für .NET Framework 3.5, 4.8 und 4.8.1 für Windows 10 Version 22H2 für x64 ((KB5022729)) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title Microsoft .NET Framework 4.8.1 Language Packs für Windows 10 Version 22H2 für x64 (KB5027937) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title Sicherheitsupdate für Microsoft ODBC Driver 17 for SQL Server (KB5037570) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title 2024-10 Update für Windows 10 Version 22H2 für x64-basierte Systeme (KB5001716) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title Update für Microsoft Defender Antivirus Antischadsoftwareplattform – KB4052623 (Version 4.18.24090.11) – Aktueller Kanal (Allgemein) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title Sicherheitsupdate für SQL Server 2019 RTM GDR (KB5046859) Downloaded True Installed True Languages en Categories System.__ComObject System.__ComObject System.__ComObject System.__ComObject System.__ComObject Title Windows-Tool zum Entfernen bösartiger Software x64 - v5.132 (KB890830) Downloaded True Installed True Languages Categories System.__ComObject System.__ComObject Title Security Intelligence-Update für Microsoft Defender Antivirus – KB2267602 (Version 1.423.29.0) – Aktueller Kanal (Allgemein) Downloaded True Installed True Languages Categories System.__ComObject Title 2023-10 Update für Windows 10 Version 22H2 für x64-basierte Systeme (KB4023057) Downloaded False Installed True Languages Categories System.__ComObject Title 2025-02 Kumulatives Update für Windows 10 Version 22H2 für x64-basierte Systeme (KB5051974) Downloaded True Installed True Languages
Zuerst liest du die Namen der Kategorien ein
$Categories = $Update.Categories | ForEach-Object { $_.GetType().InvokeMember("Name", "GetProperty", $null, $_, $null) }
und diese kannst du dann mit Join verbinden.
Categories = $Categories -Join ", "