mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2024-11-12 21:55:52 -06:00
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:
parent
6ffca764ef
commit
2c6b459870
@ -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
10914
winutil.ps1
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user