mirror of
https://github.com/ChrisTitusTech/winutil
synced 2026-02-05 23:40:10 +00:00
Update-docs (#3889)
* Update _index.md * Rename AH.md to Activity.md * Update Activity.md * Update Activity.md * Update Activity.md * Update ConsumerFeatures.md * Update and rename DVR.md to GameDVR.md * Update DeleteTempFiles.md * Delete docs/content/dev/tweaks/Essential-Tweaks/DisableRecall.md * Update _index.md * Update _index.md * Update DiskCleanup.md * Update EdgeDebloat.md * Update Activity.md * Update EndTaskOnTaskbar.md * Update ConsumerFeatures.md * Update GameDVR.md * Update and rename Hiber.md to Hibernation.md * Delete docs/content/dev/tweaks/Essential-Tweaks/Home.md * Update IPv46.md * Update LaptopHibernation.md * Update and rename Loc.md to Location.md * Delete docs/content/dev/tweaks/Essential-Tweaks/Powershell7.md * Update Powershell7Tele.md * Update RestorePoint.md * Update Services.md * Update Storage.md * Update Tele.md * Rename Tele.md to Telemetry.md * Delete docs/content/dev/tweaks/Essential-Tweaks/Wifi.md * Update _index.md * Update _index.md * Update _index.md * Update _index.md * Update and rename RemoveUltPerf.md to RemoveProfile.md * Delete docs/content/dev/tweaks/Performance-Plans/AddUltPerf.md * Rename RemoveProfile.md to Profile.md * Update _index.md * Update _index.md * Update _index.md * Update BingSearch.md * Update DarkMode.md * Update DetailedBSoD.md * Update HiddenFiles.md * Update MouseAcceleration.md * Update NumLock.md * Update ShowExt.md * Update SnapFlyout.md * Update SnapSuggestion.md * Update SnapWindow.md * Update StickyKeys.md * Update TaskView.md * Update TaskbarAlignment.md * Update TaskbarSearch.md * Update TaskbarWidgets.md * Update VerboseLogon.md * Update _index.md * Update _index.md * Update _index.md * Update BlockAdobeNet.md * Update DeBloat.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe.md * Update DisableBGapps.md * Update DisableFSO.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1.md * Update DisableNotifications.md * Update and rename Disableipsix.md to DisableIPv6.md * Update Display.md * Update OOSUbutton.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot.md * Update and rename RemoveEdge.md to EdgeUninstall.md * Update and rename RemoveHomeGallery.md to RemoveHome.md * Create RemoveGallery.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive.md * Update RightClickMenu.md * Update Teredo.md * Update UTC.md * Update Undoall.md * Update button.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/button.md * Delete docs/content/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall.md * Update _index.md * Update _index.md * Update _index.md * Update _index.md * Update DisableLegacyRecovery.md * Delete docs/content/dev/features/Features/DisableSearchSuggestions.md * Update EnableLegacyRecovery.md * Update DisableLegacyRecovery.md * Delete docs/content/dev/features/Features/EnableSearchSuggestions.md * Delete docs/content/dev/features/Features/Install.md * Update RegBackup.md * Update Sandbox.md * Update dotnet.md * Update hyperv.md * Update legacymedia.md * Update nfs.md * Update wsl.md * Update _index.md * Update _index.md * Update _index.md * Update Autologin.md * Update and rename DISM.md to CorruptionScan.md * Update Network.md * Update RunAdobeCCCleanerTool.md * Update Update.md * Update Winget.md * Update _index.md * Update _index.md * Update _index.md * Update control.md * Update network.md * Update power.md * Update printer.md * Update region.md * Update sound.md * Update system.md * Update user.md * Update _index.md * Update _index.md * Update _index.md * Delete docs/assets/images/Compile.png * Add files via upload * Update KnownIssues.md * Update _index.md * Update _index.md * Update _index.md * Update _index.md * Update _index.md * Update _index.md * Update _index.md * Delete docs/archetypes directory * Delete docs/i18n directory * Delete docs/assets/images/Install/Installation-completion.png * Delete docs/assets/images/Install/track-progress.png * Delete docs/assets/images/microwin/dism++_drivercontrol.png * Delete docs/assets/images/microwin/dism++_driverexport.png * Delete docs/assets/images/microwin/dt_activeinst.png * Delete docs/assets/images/microwin/dt_exportdrvs.png * Delete docs/assets/images/microwin/dt_exporttarget.png * Rename microwin-customuser-dark.png to microwin-user-dark.png * Rename microwin-customuser-light.png to microwin-user-light.png * Delete docs/assets/images/microwin/microwin-downloader-dark.png * Delete docs/assets/images/microwin/microwin-downloader-light.png * Delete docs/assets/images/microwin/microwin-screen-dark.png * Delete docs/assets/images/microwin/microwin-screen-full-dark.png * Delete docs/assets/images/microwin/microwin-screen-full-light.png * Delete docs/assets/images/microwin/microwin-screen-light.png * Delete docs/assets/images/microwin/microwin-skuselect-dark.png * Delete docs/assets/images/microwin/microwin-skuselect-light.png * Delete docs/assets/images/microwin/microwin-user-dark.png * Delete docs/assets/images/microwin/microwin-user-light.png * Delete docs/assets/images/microwin/rapr_folderpicker.png * Delete docs/assets/images/microwin/rapr_menu.png * Create 4 * Add files via upload * Delete docs/assets/images/microwin/4 * Delete docs/assets/images/microwin/Configure-Windows-ISO.png * Add files via upload * Delete docs/assets/images/microwin/Configure-Windows-ISO.png * Add files via upload * Create default.md * Fix formatting in automation user guide * Fix typo in Edge uninstall link text * Fix typo in DeBloat.md description Corrected a typo in the description of the WPFTweaksDeBloat section. * Update links for Delete Temp Files and Activity History * fix bad urls * update typos --------- Co-authored-by: Chris Titus <contact@christitus.com>
This commit is contained in:
@@ -1,139 +1,30 @@
|
||||
# Create Restore Point
|
||||
|
||||
Last Updated: 2024-08-07
|
||||
|
||||
|
||||
> [!NOTE]
|
||||
The Development Documentation is auto generated for every compilation of Winutil, meaning a part of it will always stay up-to-date. **Developers do have the ability to add custom content, which won't be updated automatically.**
|
||||
## Description
|
||||
|
||||
Creates a restore point at runtime in case a revert is needed from Winutil modifications
|
||||
|
||||
<!-- BEGIN CUSTOM CONTENT -->
|
||||
|
||||
<!-- END CUSTOM CONTENT -->
|
||||
|
||||
<details>
|
||||
<summary>Preview Code</summary>
|
||||
|
||||
```json
|
||||
{
|
||||
"Content": "Create Restore Point",
|
||||
"Description": "Creates a restore point at runtime in case a revert is needed from Winutil modifications",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Checked": "False",
|
||||
"Order": "a001_",
|
||||
"InvokeScript": [
|
||||
"
|
||||
# Check if the user has administrative privileges
|
||||
if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
|
||||
Write-Host \"Please run this script as an administrator.\"
|
||||
return
|
||||
}
|
||||
|
||||
# Check if System Restore is enabled for the main drive
|
||||
try {
|
||||
# Try getting restore points to check if System Restore is enabled
|
||||
Enable-ComputerRestore -Drive \"$env:SystemDrive\"
|
||||
} catch {
|
||||
Write-Host \"An error occurred while enabling System Restore: $_\"
|
||||
}
|
||||
|
||||
# Check if the SystemRestorePointCreationFrequency value exists
|
||||
$exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue
|
||||
if($null -eq $exists) {
|
||||
write-host 'Changing system to allow multiple restore points per day'
|
||||
Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null
|
||||
}
|
||||
|
||||
# Attempt to load the required module for Get-ComputerRestorePoint
|
||||
try {
|
||||
Import-Module Microsoft.PowerShell.Management -ErrorAction Stop
|
||||
} catch {
|
||||
Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"
|
||||
return
|
||||
}
|
||||
|
||||
# Get all the restore points for the current day
|
||||
try {
|
||||
$existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }
|
||||
} catch {
|
||||
Write-Host \"Failed to retrieve restore points: $_\"
|
||||
return
|
||||
}
|
||||
|
||||
# Check if there is already a restore point created today
|
||||
if ($existingRestorePoints.Count -eq 0) {
|
||||
$description = \"System Restore Point created by Winutil\"
|
||||
|
||||
Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"
|
||||
Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"
|
||||
}
|
||||
"WPFTweaksRestorePoint": {
|
||||
"Content": "Create Restore Point",
|
||||
"Description": "Creates a restore point at runtime in case a revert is needed from WinUtil modifications",
|
||||
"category": "Essential Tweaks",
|
||||
"panel": "1",
|
||||
"Checked": "False",
|
||||
"Order": "a001_",
|
||||
"registry": [
|
||||
{
|
||||
"Path": "HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore",
|
||||
"Name": "SystemRestorePointCreationFrequency",
|
||||
"Type": "DWord",
|
||||
"Value": "0",
|
||||
"OriginalValue": "1440"
|
||||
}
|
||||
],
|
||||
"InvokeScript": [
|
||||
"
|
||||
],
|
||||
"link": "https://christitustech.github.io/Winutil/dev/tweaks/Essential-Tweaks/RestorePoint"
|
||||
}
|
||||
if (-not (Get-ComputerRestorePoint)) {
|
||||
Enable-ComputerRestore -Drive $Env:SystemDrive
|
||||
}
|
||||
|
||||
Checkpoint-Computer -Description \"System Restore Point created by WinUtil\" -RestorePointType MODIFY_SETTINGS
|
||||
Write-Host \"System Restore Point Created Successfully\" -ForegroundColor Green
|
||||
"
|
||||
],
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
## Invoke Script
|
||||
|
||||
```powershell
|
||||
|
||||
# Check if the user has administrative privileges
|
||||
if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
|
||||
Write-Host "Please run this script as an administrator."
|
||||
return
|
||||
}
|
||||
|
||||
# Check if System Restore is enabled for the main drive
|
||||
try {
|
||||
# Try getting restore points to check if System Restore is enabled
|
||||
Enable-ComputerRestore -Drive "$env:SystemDrive"
|
||||
} catch {
|
||||
Write-Host "An error occurred while enabling System Restore: $_"
|
||||
}
|
||||
|
||||
# Check if the SystemRestorePointCreationFrequency value exists
|
||||
$exists = Get-ItemProperty -path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore" -Name "SystemRestorePointCreationFrequency" -ErrorAction SilentlyContinue
|
||||
if($null -eq $exists) {
|
||||
write-host 'Changing system to allow multiple restore points per day'
|
||||
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore" -Name "SystemRestorePointCreationFrequency" -Value "0" -Type DWord -Force -ErrorAction Stop | Out-Null
|
||||
}
|
||||
|
||||
# Attempt to load the required module for Get-ComputerRestorePoint
|
||||
try {
|
||||
Import-Module Microsoft.PowerShell.Management -ErrorAction Stop
|
||||
} catch {
|
||||
Write-Host "Failed to load the Microsoft.PowerShell.Management module: $_"
|
||||
return
|
||||
}
|
||||
|
||||
# Get all the restore points for the current day
|
||||
try {
|
||||
$existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }
|
||||
} catch {
|
||||
Write-Host "Failed to retrieve restore points: $_"
|
||||
return
|
||||
}
|
||||
|
||||
# Check if there is already a restore point created today
|
||||
if ($existingRestorePoints.Count -eq 0) {
|
||||
$description = "System Restore Point created by Winutil"
|
||||
|
||||
Checkpoint-Computer -Description $description -RestorePointType "MODIFY_SETTINGS"
|
||||
Write-Host -ForegroundColor Green "System Restore Point Created Successfully"
|
||||
}
|
||||
|
||||
|
||||
```
|
||||
|
||||
<!-- BEGIN SECOND CUSTOM CONTENT -->
|
||||
|
||||
<!-- END SECOND CUSTOM CONTENT -->
|
||||
|
||||
|
||||
[View the JSON file](https://github.com/ChrisTitusTech/Winutil/tree/main/config/tweaks.json)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user