Public/Get-SurfaceWinPEModel.ps1
|
function Get-SurfaceWinPEModel { <# .SYNOPSIS Discovers Surface models for which Microsoft publishes Windows PE import guidance. .DESCRIPTION Reads Microsoft's current Surface Windows PE deployment guidance and Surface driver catalog, then matches both sources dynamically. No static model catalog is used. .PARAMETER Model Optional wildcard filter for the model name. .PARAMETER Status Optional discovery status filter. .EXAMPLE Get-SurfaceWinPEModel .EXAMPLE Get-SurfaceWinPEModel -Model '*Laptop*' .EXAMPLE Get-SurfaceWinPEModel | Out-GridView -PassThru #> [CmdletBinding()] param( [string]$Model, [ValidateSet('Matched','Unmatched','Ambiguous')] [string]$Status ) $models = @(Get-SurfaceDiscovery) if ($Model) { $models = @($models | Where-Object Model -Like $Model) } if ($Status) { $models = @($models | Where-Object Status -eq $Status) } $models | Sort-Object Model } |