mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2024-11-13 22:25:51 -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)
|
param($State)
|
||||||
Try{
|
Try{
|
||||||
$guid = "e9a42b02-d5df-448d-aa00-03f14749eb61"
|
|
||||||
|
|
||||||
if($state -eq "Enabled"){
|
if($state -eq "Enabled"){
|
||||||
Write-Host "Adding Ultimate Performance Profile"
|
# Define the name and GUID of the power scheme you want to add
|
||||||
[scriptblock]$command = {powercfg -duplicatescheme $guid}
|
$powerSchemeName = "Ultimate Performance"
|
||||||
|
$powerSchemeGuid = "e9a42b02-d5df-448d-aa00-03f14749eb61"
|
||||||
}
|
|
||||||
if($state -eq "Disabled"){
|
# Get all power schemes
|
||||||
Write-Host "Removing Ultimate Performance Profile"
|
$schemes = powercfg /list | Out-String -Stream
|
||||||
[scriptblock]$command = {powercfg -delete $guid}
|
|
||||||
|
# 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{
|
Catch{
|
||||||
Write-Warning $psitem.Exception.Message
|
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