diff --git a/Tools.ps1 b/Tools.ps1 index e498e17..405418f 100644 --- a/Tools.ps1 +++ b/Tools.ps1 @@ -61,16 +61,11 @@ Return [version]$Return.Trim('.') Function IsWindowsVersion { param( - [Parameter(Mandatory=$true,ParameterSetName='gt')] - [string]$gt, - [Parameter(Mandatory=$true,ParameterSetName='ge')] - [string]$ge, - [Parameter(Mandatory=$true,ParameterSetName='lt')] - [string]$lt, - [Parameter(Mandatory=$true,ParameterSetName='le')] - [string]$le, - [Parameter(Mandatory=$true,ParameterSetName='eq')] - [string]$eq + [Parameter(Mandatory=$true,ParameterSetName='gt')][string]$gt, + [Parameter(Mandatory=$true,ParameterSetName='ge')][string]$ge, + [Parameter(Mandatory=$true,ParameterSetName='lt')][string]$lt, + [Parameter(Mandatory=$true,ParameterSetName='le')][string]$le, + [Parameter(Mandatory=$true,ParameterSetName='eq')][string]$eq ) [version]$WindowsVersion = [System.Environment]::OSVersion.Version switch ($PSCmdlet.ParameterSetName) @@ -81,4 +76,25 @@ switch ($PSCmdlet.ParameterSetName) 'le' { If ( $WindowsVersion -le (Get-Version $le) ) { Return $true } Else { Return $false } } 'eq' { If ( $WindowsVersion -eq (Get-Version $eq) ) { Return $true } Else { Return $false } } } +} + +## Function to compare current Windows version with a supplied version +Function IsWindowsBuild +{ +param( + [Parameter(Mandatory=$true,ParameterSetName='gt')][string]$gt, + [Parameter(Mandatory=$true,ParameterSetName='ge')][string]$ge, + [Parameter(Mandatory=$true,ParameterSetName='lt')][string]$lt, + [Parameter(Mandatory=$true,ParameterSetName='le')][string]$le, + [Parameter(Mandatory=$true,ParameterSetName='eq')][string]$eq +) +[int]$WindowsBuild = [System.Environment]::OSVersion.Version.Build +switch ($PSCmdlet.ParameterSetName) +{ + 'gt' { If ( $WindowsBuild -gt $gt ) { Return $true } Else { Return $false } } + 'ge' { If ( $WindowsBuild -ge $ge ) { Return $true } Else { Return $false } } + 'lt' { If ( $WindowsBuild -lt $lt ) { Return $true } Else { Return $false } } + 'le' { If ( $WindowsBuild -le $le ) { Return $true } Else { Return $false } } + 'eq' { If ( $WindowsBuild -eq $eq ) { Return $true } Else { Return $false } } +} } \ No newline at end of file