Local Reinstall Windows -

private async Task PerformLocalReinstall(ResetOptions options)

private async Task<bool> CheckPrerequisites()

if ($KeepFiles) Start-Process "systemreset.exe" -ArgumentList "-keepmyfiles" -Wait -NoNewWindow else Start-Process "systemreset.exe" -ArgumentList "-cleanpc" -Wait -NoNewWindow local reinstall windows

function Test-Administrator $currentUser = [Security.Principal.WindowsIdentity]::GetCurrent() $principal = New-Object Security.Principal.WindowsPrincipal($currentUser) return $principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)

// Implement async directory copy await Task.Run(() => foreach (string file in Directory.GetFiles(source, "*", SearchOption.AllDirectories)) string destFile = file.Replace(source, destination); Directory.CreateDirectory(Path.GetDirectoryName(destFile)); File.Copy(file, destFile, true); ); foreach (string file in Directory.GetFiles(source

Start-LocalReinstall // CLI Version public class WindowsResetCLI

private async Task VerifyImageIntegrity(string imagePath) local reinstall windows

private async Task UseSystemResetAPI(ResetOptions options)