Fix power profile (#766)

* Fix power profile query

* fix syntax

* fix

* Update Invoke-WPFUltimatePerformance.ps1

* Update winutil.ps1

* power profile fix
This commit is contained in:
Chris Titus 2023-05-16 14:52:11 -05:00 committed by GitHub
parent 6ffca764ef
commit 2c6b459870
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5533 additions and 5449 deletions

View File

@ -7,24 +7,66 @@ Function Invoke-WPFUltimatePerformance {
#>
param($State)
Try{
$guid = "e9a42b02-d5df-448d-aa00-03f14749eb61"
if($state -eq "Enabled"){
Write-Host "Adding Ultimate Performance Profile"
[scriptblock]$command = {powercfg -duplicatescheme $guid}
}
if($state -eq "Disabled"){
Write-Host "Removing Ultimate Performance Profile"
[scriptblock]$command = {powercfg -delete $guid}
# Define the name and GUID of the power scheme you want to add
$powerSchemeName = "Ultimate Performance"
$powerSchemeGuid = "e9a42b02-d5df-448d-aa00-03f14749eb61"
# Get all power schemes
$schemes = powercfg /list | Out-String -Stream
# Find the scheme you want to add
$ultimateScheme = $schemes | Where-Object { $_ -match $powerSchemeName }
# If the scheme does not exist, add it
if ($null -eq $ultimateScheme) {
Write-Host "Power scheme '$powerSchemeName' not found. Adding..."
# Add the power scheme
powercfg /duplicatescheme $powerSchemeGuid
Write-Host "Power scheme added successfully."
}
else {
Write-Host "Power scheme '$powerSchemeName' already exists."
}
}
elseif($state -eq "Disabled"){
# Define the name of the power scheme you want to remove
$powerSchemeName = "Ultimate Performance"
# Get all power schemes
$schemes = powercfg /list | Out-String -Stream
# Find the scheme you want to remove
$ultimateScheme = $schemes | Where-Object { $_ -match $powerSchemeName }
# If the scheme exists, remove it
if ($null -ne $ultimateScheme) {
# Extract the GUID of the power scheme
$guid = ($ultimateScheme -split '\s+')[3]
if($null -ne $guid){
Write-Host "Found power scheme '$powerSchemeName' with GUID $guid. Removing..."
# Remove the power scheme
powercfg /delete $guid
Write-Host "Power scheme removed successfully."
}
else {
Write-Host "Could not find GUID for power scheme '$powerSchemeName'."
}
}
else {
Write-Host "Power scheme '$powerSchemeName' not found."
}
}
$output = Invoke-Command -ScriptBlock $command
if($output -like "*does not exist*"){
throw [GenericException]::new('Failed to modify profile')
}
}
Catch{
Write-Warning $psitem.Exception.Message
}
}
}

10914
winutil.ps1

File diff suppressed because it is too large Load Diff