Hoe controleer je de hardwarecompatibiliteit van Windows 11 met PowerShell?

Dit hele proces is nogal omslachtig, maar soms moet je de handen uit de mouwen steken en handmatig controleren of een machine Windows 11 kan draaien, vooral in grotere omgevingen. Als je hardware in orde blijkt wanneer je het script uitvoert, zit je over het algemeen goed. Maar als het fouten geeft of weigert te draaien, zijn er mogelijk een paar aanpassingen nodig. Soms is het certificaat voor de codeondertekening van het script verlopen, of is je omgeving niet ingesteld om niet-ondertekende scripts uit te voeren. Het is dus handig om te weten hoe je dat soort problemen ter plekke kunt oplossen.

Hoe u de compatibiliteit met Windows 11 kunt controleren met een script en dit kunt automatiseren

Methode 1: Het HardwareReadiness.ps1-script handmatig uitvoeren

Dit script scant in feite de hardware van je pc en geeft een code weer die aangeeft of deze geschikt is (0 betekent OK).Omdat het is ondertekend door Microsoft, maar met een verlopen certificaat, wordt het waarschijnlijk geblokkeerd wanneer je het uitvoert in de standaard beveiligingsmodus. Je moet dus eerst het uitvoeren van niet-ondertekende scripts toestaan, wat een gebruikelijke stap is en niet al te gevaarlijk als je weet wat je doet.

  • Open Windows PowerShell als beheerder. Ga naar het Startmenu, zoek naar PowerShell, klik met de rechtermuisknop en selecteer ‘Uitvoeren als beheerder’.
  • Wijzig het uitvoeringsbeleid tijdelijk zodat u scripts kunt uitvoeren zonder problemen met de digitale handtekening: Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned. Dit geldt alleen voor de huidige PowerShell-sessie, dus u hoeft zich geen zorgen te maken dat uw systeem op de lange termijn beschadigd raakt.
  • Navigeer naar de locatie waar je script zich bevindt. Als je het bijvoorbeeld naar je bureaublad hebt gedownload, doe dan het volgende: cd $env:UserProfile\Desktop. Als je het ergens anders hebt opgeslagen, ga dan naar die map.
  • Voer het script uit: .\HardwareReadiness.ps1. Bekijk de uitvoer — een code `0` betekent dat je hardware in orde is.

In sommige configuraties kan dit een beveiligingswaarschuwing geven of de uitvoering blokkeren. Als dat gebeurt, controleer dan uw uitvoeringsbeleid of deblokkeer het scriptbestand door er met de rechtermuisknop op te klikken, Eigenschappen te kiezen en vervolgens op Deblokkeren te klikken. Anders zou het script moeten werken en een foutcode moeten geven. Ik weet niet zeker waarom, maar soms werkt het wel bij de tweede poging nadat het beleid opnieuw is ingesteld of de computer opnieuw is opgestart.

Methode 2: De controle automatiseren op meerdere machines

Als je een groot aantal computers beheert, is dit handmatig doen geen pretje. Hier komen je domeintools van pas. Je kunt het script implementeren via Groepsbeleid, of het op afstand uitvoeren vanuit PowerShell met tools zoals SCCM, Intune of gewoon PowerShell-remotebeheer.

Voor een snelle installatie kopieert u het script naar de gedeelde Netlogon -map op uw domeincontroller \\woshub.loc\Netlogon. Ga vervolgens naar de Group Policy Management-console ( gpmc.msc ), maak een nieuw GPO aan en koppel dit aan de organisatie-eenheden (OU’s) die u wilt controleren.

Ga in de GPO-editor naar: Computerconfiguratie > Beleid > Windows-instellingen > Scripts (opstarten/afsluiten) > Opstarten. Voeg daar uw script toe en geef het UNC-pad op, bijvoorbeeld \\woshub.loc\Netlogon\HardwareReadiness.ps1. Om timingproblemen te voorkomen, gaat u naar Computerconfiguratie > Beleid > Administratieve sjablonen > Systeem > Aanmelden en schakelt u de opties ‘Aanmeldingsscriptvertraging configureren’ (stel deze in op 1 minuut) en ‘ Altijd wachten op het netwerk bij het opstarten en aanmelden van de computer’ in.

Op deze manier wordt het script elke keer dat de computer opstart uitgevoerd. Na het opnieuw opstarten kunt u via de ADUC-console ( dsa.msc ) de informatie van elke machine controleren om te zien of deze klaar is voor Windows 11. Sommige mensen maken ook scripts voor de rapporten – bijvoorbeeld door alle machines met een retourcode die niet nul is te verzamelen en in een rapport te verwerken. Een perfecte manier om problemen snel op te sporen.

Even een opmerking: omdat het certificaat voor de codeondertekening van het script in 2022 is verlopen, moet u, als u dit script wilt uitrollen, het waarschijnlijk aanpassen om de handtekeningcontrole te omzeilen of het met uw eigen certificaat ondertekenen (daar gaan we nu niet dieper op in).Het bewerken van het script om aangepaste code toe te voegen (zoals het schrijven naar AD-attributen) helpt bovendien bij het centraliseren van rapportage.

Zodra alles is ingesteld, een snelle herstart, zou de compatibiliteitsinformatie voor Windows 11 in Active Directory moeten verschijnen onder het attribuut ‘Info’ voor elke machine. Eenvoudig te filteren met PowerShell-opdrachten, zoals:

Get-ADComputer -Filter {enabled -eq "true"} -Properties * | Where-Object { $_.info -ne $null }

Dit haalt alle actieve, gecontroleerde computers met bijbehorende informatie op — ideaal voor inventarisatie. Als u dieper in de hardwaredetails wilt duiken en wilt specificeren welke computers defect zijn, is een geavanceerder PowerShell-script dat de JSON-uitvoer analyseert handig.

Extra tips en valkuilen

  • In sommige configuraties kan het uitvoeren van PowerShell-scripts op afstand of via GPO worden geblokkeerd door beleidsregels. Controleer daarom uw uitvoeringsbeleid en WMI-machtigingen.
  • Zorg ervoor dat de tijd op de pc correct is (soms zijn certificaten voor digitale handtekeningen belangrijk als je documenten digitaal ondertekent) en dat je netwerkinstellingen het uitvoeren van scripts op afstand toestaan.
  • Pas het script aan als u informatie zoals de TPM-versie, Secure Boot of processorgegevens in uw rapporten wilt opnemen. De meeste van deze gegevens zijn toegankelijk via WMI of registerquery’s.
  • Als er fouten optreden of als het script vastloopt, probeer het dan eerst rechtstreeks op een testmachine uit te voeren om de prestaties en machtigingen te controleren.

Dit klinkt in eerste instantie misschien wat ingewikkeld, maar als het eenmaal werkt, zorgt het automatiseren van hardwareconformiteitscontroles ervoor dat iedereen tevreden is en dat er minder handmatig werk nodig is. Een paar scripts en slimme GPO-instellingen – werkt beter dan handmatig tientallen machines af te vinken.

Samenvatting

  • Moet je de hardwarecompatibiliteit controleren? Voer het PowerShell-script uit met het uitvoeringsbeleid ingesteld op RemoteSigned.
  • Implementeer via GPO voor massale controles en pas de GPO-instellingen aan om ervoor te zorgen dat scripts probleemloos worden uitgevoerd bij het opstarten.
  • Controleer AD-kenmerken of genereer rapporten voor een overzicht van de nalevingsstatus.
  • Pas het script indien nodig aan, met name wat betreft de vervaldatum van de codeondertekening of specifieke hardwarecontroles.

Samenvatting

Deze methode is niet perfect — sommige machines kunnen nog steeds valse positieve of negatieve resultaten geven, vooral als ze niet-ondersteunde TPM-modules of andere eigenaardigheden hebben. Maar over het algemeen is het een degelijke manier om een ​​goed beeld te krijgen van welke machines in een bedrijfsomgeving klaar zijn voor Windows 11. Houd er wel rekening mee dat automatisering wat initiële configuratie vereist, maar op de lange termijn enorm veel tijd bespaart. Hopelijk bespaart dit iemand een hoop kopzorgen.