2024-02-07 11:18:04 -06:00
function Test-CompatibleImage ( ) {
2024-08-06 15:35:17 -05:00
<#
. SYNOPSIS
Checks the version of a Windows image and determines whether or not it is compatible with a specific feature depending on a desired version
Test 2024 01 25 (#1505)
* Update applications.json
Fake app add made by linux fanboy
* Compile Winutil
* Update screen-install.png (#1464)
* Compile Winutil
* Update files (#1487)
- Add detections for whether the image to be processed by MicroWin is Windows 10 or later
- Add procedure to clear the indexes ComboBox (WinForms term) every time an ISO is specified
Co-authored-by: Chris Titus <contact@christitus.com>
* Lots of changes to Invoke-WPFFixesUpdate (#1467)
* Add Guilded into Communication Tab (#1059)
* Add Guilded into Communication Tab
* Remove Choco Package due to there is no Chocolatey packages
* : Add ZeroTier One to utilities menu (#1061)
* Update applications.json (#1063)
Update to add [SuperF4 - Stefan Sundin](https://stefansundin.github.io/superf4/), as mentioned in #374 [Choco - SuperF4](https://community.chocolatey.org/packages/superf4) maintained by Xav83. [WinGet - SuperF4](https://winstall.app/apps/StefanSundin.Superf4) SuperF4 and Winget package published by Stefan Sundin.
* Update inputXML.xaml (#1062)
Updated inputXML.xaml to account for addition of the SuperF4 software.
* Added AIMP music player (#1064)
* Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)
* Tidy up SuperF4 line.
* Tidy up SuperF4 line.
Used spaces instead of tabs.
* Add dotnet 7.0.11 Desktop Runtime
* Undone changes to SuperF4 line
* Addition of Ventoy (chocolatey only) package
* Comment Spacing, Indentation, and Capitalization (#1084)
* Comment Spacing, Indentation, and Capitalization
* Comment Grammar and Spacing
Makes grammar in comments better and more consistent
Adds space before comment and centers word in `Write-Host` commands
* More Grammar and Formatting
* Add some comments
* Populate PlaceHolder comments in functions
Files I found that has issues:
Get-WinUtilRegistry.ps1
Install-WinUtilWinget.ps1
Invoke-WinUtilDarkMode.ps1
Remove-WinUtilAPPX.ps1
Test-WinUtilPackageManager.ps1
Update-WinUtilProgramWinget.ps1
Invoke-WPFUpdatessecurity.ps1
* Tweak a few more comments
* Tweak another write-host statement
* Undo Catch statement adjustment
It's outside of the scope of this pull request
* Fix indentation
* Description, Progress Bar, and nuke step 10
- Added a full description of exactly what the function does
- Replaced `Write-Host`s with multiple progress bars
- Might've added too many, but I didn't want to add one for just a few of them as I want the user to be able to see all tasks that have been performed, just like with `Write-Host`
- Removed Step 10
- Only applies to Windows 8
* Add Aggressive Parameter, Actually Force Check for Updates
* Add aggressive parameter and add system repair step
* Lots of changes
* Revert Stuff
This reverts commit 199a92e26e418c544691a0b6eda5d6e7f3e56b8d.
Revert "Comment Spacing, Indentation, and Capitalization (#1084)"
This reverts commit acc2b5b243654156de4c6bdbcc5f7b72e4cdf578.
Revert "Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)"
This reverts commit 932ec6a0a00f7d2fb9cb3fca2fd4bf7ee74d9ce7.
Revert "Added AIMP music player (#1064)"
This reverts commit d1a4a67a45335450cd82d4960ddf4b8a0e565eef.
Revert "Update inputXML.xaml (#1062)"
This reverts commit 2db4cb556edfce9602f931e37b3ee4f59d9ecf7f.
Revert "Update applications.json (#1063)"
This reverts commit ce7edbd60dda92a00293bf2f727b44af63165838.
Revert ": Add ZeroTier One to utilities menu (#1061)"
This reverts commit 783a9657d0c6a08a9e9ef6e19bd461c8af7c1420.
---------
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
* Compile Winutil
* Invoke-WPFRunspace argument fix (#1497)
* Compile Winutil
* Fixes, Changes & Features Added (Broken links & Comments) (#1476)
* Fixes & Changes (Broken links & Comments)
- Snappy Driver Installer Origin
Github source code deprecated. Replaced with SourceForge official source code site.
- Spacedrive File Manager
"spacedrive.org" not working. Changed to official site.
**Recent Alpha ver 0.2.0 - crashing on install for Win10+ (not tested in "lower" win versions), may be better to remove overall or place on standby.**
- Xtreme Download Manager
Web Integration not working for chromium based browser.
**Deprecated by Manifest V3, no official update release.**
* Update applications.json
Reverted winget for Spacedrive to original.
Spacedrive.FileSystem -> spacedrive.Spacedrive
* Fix for Portmaster [Wrong repo/winget]
* Choco Safing Portmaster
* Added Apps Request
- Added TeCno Account Switcher
Resolves Feature Request n.6° #1451
- Added ATLauncher
- Added OP Auto Clicker
- Added Motrix Download Manager
Resolves Feature Request #1443
* Fixed Panel Numbers
* Added Thonny Python IDE
- Feature Request
#1451
* Update applications.json
fix few missing values
* Update applications.json
add winget thonny
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Fixed typo: latancy to latency (#1492)
* Compile Winutil
* Update inputXML.xaml (#1462)
* Compile Winutil
* Update .gitignore
* add Dax Studio program to the Development category (#1500)
* Compile Winutil
* Add GitHub CLI to applications (#1460)
* Added GitHub CLI to applications
GitHub cli is the command line interface offered by github alongside
github desktop.
For more information see: https://github.com/cli/cli.
Installation instructions taken from: https://github.com/cli/cli#windows
* spelling: removed accidental dot
* Compile Winutil
* Add Vesktop to applications.json (#1461)
* Add Vesktop to applications.json
* fix syntax error
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add some apps (#1466)
* Add some apps
* Fix WPFInstallopenhashtab
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* adds helix to development tools (#1469)
* Compile Winutil
* Add tooltips to config checkboxes (#1470)
* Fix typo
* Update winutil.ps1
* Update winutil.ps1
Add tooltips to checkboxes in config session and rewrite so to make things more clear as to what each tweak does
* Revert "Update winutil.ps1"
This reverts commit aaa69c473ff814a7de9e4f7e4591fa5c0f786ffc.
* Add applications
Added Sonarr, Radarr, Prowlarr and Bazarr in response to an github issue
* Add applications
Added applications to the GUI
* Revert "Add applications"
This reverts commit e5fba2b4ebe8df138aed396e55f3fcee62224cbc.
* Revert "Add applications"
This reverts commit 55ff75a65c563dd649e6cac4868a8484a71656d5.
* Edit xaml files
Editing the xaml files so the changes persist upon compilation
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add Mumble (#1481)
Add Mumble to Communications category.
* Compile Winutil
* Added 'Stremio' (#1473)
* Compile Winutil
* Update applications.json
Added 'Stremio'
* Compile Winutil
---------
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Add the Mullvad Browser (#1475)
* add mullvad browser
* Missing tab
* fix format
---------
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Added some Applications (#1484)
* Update applications.json
Add:
- Rancher Desktop
- ManicTime
- qFlipper
- ModernFlyouts
- ZoomIt
- StartAllBack
- Wintoys
- Minecraft Launcher
* Update applications.json
added:
- Arduino IDE
- Whatsapp
* Update applications.json
corrected spacing
* Update applications.json
fixed winget commands
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Added WinMerge Application in Development category. (#1485)
WinMerge is an Open Source differencing and merging tool for Windows.
* Compile Winutil
* Fix few app links and add app (issues/1478) (#1495)
* Update some app links
* Update winutil.ps1
Date update
* Add Syncthingtray
Related to the issue: https://github.com/ChrisTitusTech/winutil/issues/1478
* Update applications.json
update putty link
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Update applications.json
* Compile Winutil
* App fix and sort
* Add Dual Monitor tools to applications.json (#1504)
* Add Dual Monitor tools to applications.json
* Update applications.json
* Update applications.json
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
---------
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Samq64 <81489795+Samq64@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Carter <60557606+Carterpersall@users.noreply.github.com>
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: ogfrm <96927197+ogfrm@users.noreply.github.com>
Co-authored-by: v-Kaefer <128633407+v-Kaefer@users.noreply.github.com>
Co-authored-by: Shashank B N <117376750+Athena-2003@users.noreply.github.com>
Co-authored-by: Alex Schwartz <alexschwartz01@gmail.com>
Co-authored-by: André Gonzalez <lopescg@gmail.com>
Co-authored-by: David Hardt <contact@hardt.ai>
Co-authored-by: Choccy Milk <152878702+choccyy-milk@users.noreply.github.com>
Co-authored-by: OmriOn <omri.hermon@gmail.com>
Co-authored-by: Breno Fernandes <fernandesopa@gmail.com>
Co-authored-by: Yuri Gabriel <97139700+Yuuh15@users.noreply.github.com>
Co-authored-by: Filip Zurek <zurfil@tuta.com>
Co-authored-by: H4D3S <32039975+REVENGE977@users.noreply.github.com>
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: KristjanOmar <117899282+KristjanOmar@users.noreply.github.com>
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: MyDrift <personal@mdiana.ch>
Co-authored-by: Akash Singh <52990376+Akash-S1999@users.noreply.github.com>
Co-authored-by: Roc Wang <rocwang911@gmail.com>
Co-authored-by: José Roberto Sánchez <jose_roberto_ss@hotmail.com>
2024-01-30 12:36:38 -06:00
2024-08-06 15:35:17 -05:00
. PARAMETER Name
imgVersion - The version of the Windows image
desiredVersion - The version to compare the image version with
#>
Test 2024 01 25 (#1505)
* Update applications.json
Fake app add made by linux fanboy
* Compile Winutil
* Update screen-install.png (#1464)
* Compile Winutil
* Update files (#1487)
- Add detections for whether the image to be processed by MicroWin is Windows 10 or later
- Add procedure to clear the indexes ComboBox (WinForms term) every time an ISO is specified
Co-authored-by: Chris Titus <contact@christitus.com>
* Lots of changes to Invoke-WPFFixesUpdate (#1467)
* Add Guilded into Communication Tab (#1059)
* Add Guilded into Communication Tab
* Remove Choco Package due to there is no Chocolatey packages
* : Add ZeroTier One to utilities menu (#1061)
* Update applications.json (#1063)
Update to add [SuperF4 - Stefan Sundin](https://stefansundin.github.io/superf4/), as mentioned in #374 [Choco - SuperF4](https://community.chocolatey.org/packages/superf4) maintained by Xav83. [WinGet - SuperF4](https://winstall.app/apps/StefanSundin.Superf4) SuperF4 and Winget package published by Stefan Sundin.
* Update inputXML.xaml (#1062)
Updated inputXML.xaml to account for addition of the SuperF4 software.
* Added AIMP music player (#1064)
* Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)
* Tidy up SuperF4 line.
* Tidy up SuperF4 line.
Used spaces instead of tabs.
* Add dotnet 7.0.11 Desktop Runtime
* Undone changes to SuperF4 line
* Addition of Ventoy (chocolatey only) package
* Comment Spacing, Indentation, and Capitalization (#1084)
* Comment Spacing, Indentation, and Capitalization
* Comment Grammar and Spacing
Makes grammar in comments better and more consistent
Adds space before comment and centers word in `Write-Host` commands
* More Grammar and Formatting
* Add some comments
* Populate PlaceHolder comments in functions
Files I found that has issues:
Get-WinUtilRegistry.ps1
Install-WinUtilWinget.ps1
Invoke-WinUtilDarkMode.ps1
Remove-WinUtilAPPX.ps1
Test-WinUtilPackageManager.ps1
Update-WinUtilProgramWinget.ps1
Invoke-WPFUpdatessecurity.ps1
* Tweak a few more comments
* Tweak another write-host statement
* Undo Catch statement adjustment
It's outside of the scope of this pull request
* Fix indentation
* Description, Progress Bar, and nuke step 10
- Added a full description of exactly what the function does
- Replaced `Write-Host`s with multiple progress bars
- Might've added too many, but I didn't want to add one for just a few of them as I want the user to be able to see all tasks that have been performed, just like with `Write-Host`
- Removed Step 10
- Only applies to Windows 8
* Add Aggressive Parameter, Actually Force Check for Updates
* Add aggressive parameter and add system repair step
* Lots of changes
* Revert Stuff
This reverts commit 199a92e26e418c544691a0b6eda5d6e7f3e56b8d.
Revert "Comment Spacing, Indentation, and Capitalization (#1084)"
This reverts commit acc2b5b243654156de4c6bdbcc5f7b72e4cdf578.
Revert "Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)"
This reverts commit 932ec6a0a00f7d2fb9cb3fca2fd4bf7ee74d9ce7.
Revert "Added AIMP music player (#1064)"
This reverts commit d1a4a67a45335450cd82d4960ddf4b8a0e565eef.
Revert "Update inputXML.xaml (#1062)"
This reverts commit 2db4cb556edfce9602f931e37b3ee4f59d9ecf7f.
Revert "Update applications.json (#1063)"
This reverts commit ce7edbd60dda92a00293bf2f727b44af63165838.
Revert ": Add ZeroTier One to utilities menu (#1061)"
This reverts commit 783a9657d0c6a08a9e9ef6e19bd461c8af7c1420.
---------
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
* Compile Winutil
* Invoke-WPFRunspace argument fix (#1497)
* Compile Winutil
* Fixes, Changes & Features Added (Broken links & Comments) (#1476)
* Fixes & Changes (Broken links & Comments)
- Snappy Driver Installer Origin
Github source code deprecated. Replaced with SourceForge official source code site.
- Spacedrive File Manager
"spacedrive.org" not working. Changed to official site.
**Recent Alpha ver 0.2.0 - crashing on install for Win10+ (not tested in "lower" win versions), may be better to remove overall or place on standby.**
- Xtreme Download Manager
Web Integration not working for chromium based browser.
**Deprecated by Manifest V3, no official update release.**
* Update applications.json
Reverted winget for Spacedrive to original.
Spacedrive.FileSystem -> spacedrive.Spacedrive
* Fix for Portmaster [Wrong repo/winget]
* Choco Safing Portmaster
* Added Apps Request
- Added TeCno Account Switcher
Resolves Feature Request n.6° #1451
- Added ATLauncher
- Added OP Auto Clicker
- Added Motrix Download Manager
Resolves Feature Request #1443
* Fixed Panel Numbers
* Added Thonny Python IDE
- Feature Request
#1451
* Update applications.json
fix few missing values
* Update applications.json
add winget thonny
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Fixed typo: latancy to latency (#1492)
* Compile Winutil
* Update inputXML.xaml (#1462)
* Compile Winutil
* Update .gitignore
* add Dax Studio program to the Development category (#1500)
* Compile Winutil
* Add GitHub CLI to applications (#1460)
* Added GitHub CLI to applications
GitHub cli is the command line interface offered by github alongside
github desktop.
For more information see: https://github.com/cli/cli.
Installation instructions taken from: https://github.com/cli/cli#windows
* spelling: removed accidental dot
* Compile Winutil
* Add Vesktop to applications.json (#1461)
* Add Vesktop to applications.json
* fix syntax error
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add some apps (#1466)
* Add some apps
* Fix WPFInstallopenhashtab
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* adds helix to development tools (#1469)
* Compile Winutil
* Add tooltips to config checkboxes (#1470)
* Fix typo
* Update winutil.ps1
* Update winutil.ps1
Add tooltips to checkboxes in config session and rewrite so to make things more clear as to what each tweak does
* Revert "Update winutil.ps1"
This reverts commit aaa69c473ff814a7de9e4f7e4591fa5c0f786ffc.
* Add applications
Added Sonarr, Radarr, Prowlarr and Bazarr in response to an github issue
* Add applications
Added applications to the GUI
* Revert "Add applications"
This reverts commit e5fba2b4ebe8df138aed396e55f3fcee62224cbc.
* Revert "Add applications"
This reverts commit 55ff75a65c563dd649e6cac4868a8484a71656d5.
* Edit xaml files
Editing the xaml files so the changes persist upon compilation
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add Mumble (#1481)
Add Mumble to Communications category.
* Compile Winutil
* Added 'Stremio' (#1473)
* Compile Winutil
* Update applications.json
Added 'Stremio'
* Compile Winutil
---------
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Add the Mullvad Browser (#1475)
* add mullvad browser
* Missing tab
* fix format
---------
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Added some Applications (#1484)
* Update applications.json
Add:
- Rancher Desktop
- ManicTime
- qFlipper
- ModernFlyouts
- ZoomIt
- StartAllBack
- Wintoys
- Minecraft Launcher
* Update applications.json
added:
- Arduino IDE
- Whatsapp
* Update applications.json
corrected spacing
* Update applications.json
fixed winget commands
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Added WinMerge Application in Development category. (#1485)
WinMerge is an Open Source differencing and merging tool for Windows.
* Compile Winutil
* Fix few app links and add app (issues/1478) (#1495)
* Update some app links
* Update winutil.ps1
Date update
* Add Syncthingtray
Related to the issue: https://github.com/ChrisTitusTech/winutil/issues/1478
* Update applications.json
update putty link
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Update applications.json
* Compile Winutil
* App fix and sort
* Add Dual Monitor tools to applications.json (#1504)
* Add Dual Monitor tools to applications.json
* Update applications.json
* Update applications.json
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
---------
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Samq64 <81489795+Samq64@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Carter <60557606+Carterpersall@users.noreply.github.com>
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: ogfrm <96927197+ogfrm@users.noreply.github.com>
Co-authored-by: v-Kaefer <128633407+v-Kaefer@users.noreply.github.com>
Co-authored-by: Shashank B N <117376750+Athena-2003@users.noreply.github.com>
Co-authored-by: Alex Schwartz <alexschwartz01@gmail.com>
Co-authored-by: André Gonzalez <lopescg@gmail.com>
Co-authored-by: David Hardt <contact@hardt.ai>
Co-authored-by: Choccy Milk <152878702+choccyy-milk@users.noreply.github.com>
Co-authored-by: OmriOn <omri.hermon@gmail.com>
Co-authored-by: Breno Fernandes <fernandesopa@gmail.com>
Co-authored-by: Yuri Gabriel <97139700+Yuuh15@users.noreply.github.com>
Co-authored-by: Filip Zurek <zurfil@tuta.com>
Co-authored-by: H4D3S <32039975+REVENGE977@users.noreply.github.com>
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: KristjanOmar <117899282+KristjanOmar@users.noreply.github.com>
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: MyDrift <personal@mdiana.ch>
Co-authored-by: Akash Singh <52990376+Akash-S1999@users.noreply.github.com>
Co-authored-by: Roc Wang <rocwang911@gmail.com>
Co-authored-by: José Roberto Sánchez <jose_roberto_ss@hotmail.com>
2024-01-30 12:36:38 -06:00
param
(
2024-08-06 15:35:17 -05:00
[ Parameter ( Mandatory , position = 0 ) ]
[ string ] $imgVersion ,
[ Parameter ( Mandatory , position = 1 ) ]
[ Version ] $desiredVersion
Test 2024 01 25 (#1505)
* Update applications.json
Fake app add made by linux fanboy
* Compile Winutil
* Update screen-install.png (#1464)
* Compile Winutil
* Update files (#1487)
- Add detections for whether the image to be processed by MicroWin is Windows 10 or later
- Add procedure to clear the indexes ComboBox (WinForms term) every time an ISO is specified
Co-authored-by: Chris Titus <contact@christitus.com>
* Lots of changes to Invoke-WPFFixesUpdate (#1467)
* Add Guilded into Communication Tab (#1059)
* Add Guilded into Communication Tab
* Remove Choco Package due to there is no Chocolatey packages
* : Add ZeroTier One to utilities menu (#1061)
* Update applications.json (#1063)
Update to add [SuperF4 - Stefan Sundin](https://stefansundin.github.io/superf4/), as mentioned in #374 [Choco - SuperF4](https://community.chocolatey.org/packages/superf4) maintained by Xav83. [WinGet - SuperF4](https://winstall.app/apps/StefanSundin.Superf4) SuperF4 and Winget package published by Stefan Sundin.
* Update inputXML.xaml (#1062)
Updated inputXML.xaml to account for addition of the SuperF4 software.
* Added AIMP music player (#1064)
* Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)
* Tidy up SuperF4 line.
* Tidy up SuperF4 line.
Used spaces instead of tabs.
* Add dotnet 7.0.11 Desktop Runtime
* Undone changes to SuperF4 line
* Addition of Ventoy (chocolatey only) package
* Comment Spacing, Indentation, and Capitalization (#1084)
* Comment Spacing, Indentation, and Capitalization
* Comment Grammar and Spacing
Makes grammar in comments better and more consistent
Adds space before comment and centers word in `Write-Host` commands
* More Grammar and Formatting
* Add some comments
* Populate PlaceHolder comments in functions
Files I found that has issues:
Get-WinUtilRegistry.ps1
Install-WinUtilWinget.ps1
Invoke-WinUtilDarkMode.ps1
Remove-WinUtilAPPX.ps1
Test-WinUtilPackageManager.ps1
Update-WinUtilProgramWinget.ps1
Invoke-WPFUpdatessecurity.ps1
* Tweak a few more comments
* Tweak another write-host statement
* Undo Catch statement adjustment
It's outside of the scope of this pull request
* Fix indentation
* Description, Progress Bar, and nuke step 10
- Added a full description of exactly what the function does
- Replaced `Write-Host`s with multiple progress bars
- Might've added too many, but I didn't want to add one for just a few of them as I want the user to be able to see all tasks that have been performed, just like with `Write-Host`
- Removed Step 10
- Only applies to Windows 8
* Add Aggressive Parameter, Actually Force Check for Updates
* Add aggressive parameter and add system repair step
* Lots of changes
* Revert Stuff
This reverts commit 199a92e26e418c544691a0b6eda5d6e7f3e56b8d.
Revert "Comment Spacing, Indentation, and Capitalization (#1084)"
This reverts commit acc2b5b243654156de4c6bdbcc5f7b72e4cdf578.
Revert "Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)"
This reverts commit 932ec6a0a00f7d2fb9cb3fca2fd4bf7ee74d9ce7.
Revert "Added AIMP music player (#1064)"
This reverts commit d1a4a67a45335450cd82d4960ddf4b8a0e565eef.
Revert "Update inputXML.xaml (#1062)"
This reverts commit 2db4cb556edfce9602f931e37b3ee4f59d9ecf7f.
Revert "Update applications.json (#1063)"
This reverts commit ce7edbd60dda92a00293bf2f727b44af63165838.
Revert ": Add ZeroTier One to utilities menu (#1061)"
This reverts commit 783a9657d0c6a08a9e9ef6e19bd461c8af7c1420.
---------
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
* Compile Winutil
* Invoke-WPFRunspace argument fix (#1497)
* Compile Winutil
* Fixes, Changes & Features Added (Broken links & Comments) (#1476)
* Fixes & Changes (Broken links & Comments)
- Snappy Driver Installer Origin
Github source code deprecated. Replaced with SourceForge official source code site.
- Spacedrive File Manager
"spacedrive.org" not working. Changed to official site.
**Recent Alpha ver 0.2.0 - crashing on install for Win10+ (not tested in "lower" win versions), may be better to remove overall or place on standby.**
- Xtreme Download Manager
Web Integration not working for chromium based browser.
**Deprecated by Manifest V3, no official update release.**
* Update applications.json
Reverted winget for Spacedrive to original.
Spacedrive.FileSystem -> spacedrive.Spacedrive
* Fix for Portmaster [Wrong repo/winget]
* Choco Safing Portmaster
* Added Apps Request
- Added TeCno Account Switcher
Resolves Feature Request n.6° #1451
- Added ATLauncher
- Added OP Auto Clicker
- Added Motrix Download Manager
Resolves Feature Request #1443
* Fixed Panel Numbers
* Added Thonny Python IDE
- Feature Request
#1451
* Update applications.json
fix few missing values
* Update applications.json
add winget thonny
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Fixed typo: latancy to latency (#1492)
* Compile Winutil
* Update inputXML.xaml (#1462)
* Compile Winutil
* Update .gitignore
* add Dax Studio program to the Development category (#1500)
* Compile Winutil
* Add GitHub CLI to applications (#1460)
* Added GitHub CLI to applications
GitHub cli is the command line interface offered by github alongside
github desktop.
For more information see: https://github.com/cli/cli.
Installation instructions taken from: https://github.com/cli/cli#windows
* spelling: removed accidental dot
* Compile Winutil
* Add Vesktop to applications.json (#1461)
* Add Vesktop to applications.json
* fix syntax error
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add some apps (#1466)
* Add some apps
* Fix WPFInstallopenhashtab
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* adds helix to development tools (#1469)
* Compile Winutil
* Add tooltips to config checkboxes (#1470)
* Fix typo
* Update winutil.ps1
* Update winutil.ps1
Add tooltips to checkboxes in config session and rewrite so to make things more clear as to what each tweak does
* Revert "Update winutil.ps1"
This reverts commit aaa69c473ff814a7de9e4f7e4591fa5c0f786ffc.
* Add applications
Added Sonarr, Radarr, Prowlarr and Bazarr in response to an github issue
* Add applications
Added applications to the GUI
* Revert "Add applications"
This reverts commit e5fba2b4ebe8df138aed396e55f3fcee62224cbc.
* Revert "Add applications"
This reverts commit 55ff75a65c563dd649e6cac4868a8484a71656d5.
* Edit xaml files
Editing the xaml files so the changes persist upon compilation
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add Mumble (#1481)
Add Mumble to Communications category.
* Compile Winutil
* Added 'Stremio' (#1473)
* Compile Winutil
* Update applications.json
Added 'Stremio'
* Compile Winutil
---------
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Add the Mullvad Browser (#1475)
* add mullvad browser
* Missing tab
* fix format
---------
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Added some Applications (#1484)
* Update applications.json
Add:
- Rancher Desktop
- ManicTime
- qFlipper
- ModernFlyouts
- ZoomIt
- StartAllBack
- Wintoys
- Minecraft Launcher
* Update applications.json
added:
- Arduino IDE
- Whatsapp
* Update applications.json
corrected spacing
* Update applications.json
fixed winget commands
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Added WinMerge Application in Development category. (#1485)
WinMerge is an Open Source differencing and merging tool for Windows.
* Compile Winutil
* Fix few app links and add app (issues/1478) (#1495)
* Update some app links
* Update winutil.ps1
Date update
* Add Syncthingtray
Related to the issue: https://github.com/ChrisTitusTech/winutil/issues/1478
* Update applications.json
update putty link
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Update applications.json
* Compile Winutil
* App fix and sort
* Add Dual Monitor tools to applications.json (#1504)
* Add Dual Monitor tools to applications.json
* Update applications.json
* Update applications.json
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
---------
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Samq64 <81489795+Samq64@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Carter <60557606+Carterpersall@users.noreply.github.com>
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: ogfrm <96927197+ogfrm@users.noreply.github.com>
Co-authored-by: v-Kaefer <128633407+v-Kaefer@users.noreply.github.com>
Co-authored-by: Shashank B N <117376750+Athena-2003@users.noreply.github.com>
Co-authored-by: Alex Schwartz <alexschwartz01@gmail.com>
Co-authored-by: André Gonzalez <lopescg@gmail.com>
Co-authored-by: David Hardt <contact@hardt.ai>
Co-authored-by: Choccy Milk <152878702+choccyy-milk@users.noreply.github.com>
Co-authored-by: OmriOn <omri.hermon@gmail.com>
Co-authored-by: Breno Fernandes <fernandesopa@gmail.com>
Co-authored-by: Yuri Gabriel <97139700+Yuuh15@users.noreply.github.com>
Co-authored-by: Filip Zurek <zurfil@tuta.com>
Co-authored-by: H4D3S <32039975+REVENGE977@users.noreply.github.com>
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: KristjanOmar <117899282+KristjanOmar@users.noreply.github.com>
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: MyDrift <personal@mdiana.ch>
Co-authored-by: Akash Singh <52990376+Akash-S1999@users.noreply.github.com>
Co-authored-by: Roc Wang <rocwang911@gmail.com>
Co-authored-by: José Roberto Sánchez <jose_roberto_ss@hotmail.com>
2024-01-30 12:36:38 -06:00
)
try {
$version = [ Version ] $imgVersion
2024-03-21 18:23:24 -05:00
return $version -ge $desiredVersion
Test 2024 01 25 (#1505)
* Update applications.json
Fake app add made by linux fanboy
* Compile Winutil
* Update screen-install.png (#1464)
* Compile Winutil
* Update files (#1487)
- Add detections for whether the image to be processed by MicroWin is Windows 10 or later
- Add procedure to clear the indexes ComboBox (WinForms term) every time an ISO is specified
Co-authored-by: Chris Titus <contact@christitus.com>
* Lots of changes to Invoke-WPFFixesUpdate (#1467)
* Add Guilded into Communication Tab (#1059)
* Add Guilded into Communication Tab
* Remove Choco Package due to there is no Chocolatey packages
* : Add ZeroTier One to utilities menu (#1061)
* Update applications.json (#1063)
Update to add [SuperF4 - Stefan Sundin](https://stefansundin.github.io/superf4/), as mentioned in #374 [Choco - SuperF4](https://community.chocolatey.org/packages/superf4) maintained by Xav83. [WinGet - SuperF4](https://winstall.app/apps/StefanSundin.Superf4) SuperF4 and Winget package published by Stefan Sundin.
* Update inputXML.xaml (#1062)
Updated inputXML.xaml to account for addition of the SuperF4 software.
* Added AIMP music player (#1064)
* Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)
* Tidy up SuperF4 line.
* Tidy up SuperF4 line.
Used spaces instead of tabs.
* Add dotnet 7.0.11 Desktop Runtime
* Undone changes to SuperF4 line
* Addition of Ventoy (chocolatey only) package
* Comment Spacing, Indentation, and Capitalization (#1084)
* Comment Spacing, Indentation, and Capitalization
* Comment Grammar and Spacing
Makes grammar in comments better and more consistent
Adds space before comment and centers word in `Write-Host` commands
* More Grammar and Formatting
* Add some comments
* Populate PlaceHolder comments in functions
Files I found that has issues:
Get-WinUtilRegistry.ps1
Install-WinUtilWinget.ps1
Invoke-WinUtilDarkMode.ps1
Remove-WinUtilAPPX.ps1
Test-WinUtilPackageManager.ps1
Update-WinUtilProgramWinget.ps1
Invoke-WPFUpdatessecurity.ps1
* Tweak a few more comments
* Tweak another write-host statement
* Undo Catch statement adjustment
It's outside of the scope of this pull request
* Fix indentation
* Description, Progress Bar, and nuke step 10
- Added a full description of exactly what the function does
- Replaced `Write-Host`s with multiple progress bars
- Might've added too many, but I didn't want to add one for just a few of them as I want the user to be able to see all tasks that have been performed, just like with `Write-Host`
- Removed Step 10
- Only applies to Windows 8
* Add Aggressive Parameter, Actually Force Check for Updates
* Add aggressive parameter and add system repair step
* Lots of changes
* Revert Stuff
This reverts commit 199a92e26e418c544691a0b6eda5d6e7f3e56b8d.
Revert "Comment Spacing, Indentation, and Capitalization (#1084)"
This reverts commit acc2b5b243654156de4c6bdbcc5f7b72e4cdf578.
Revert "Add Ventoy (Chocolatey Only Package) & .NET Core Runtime (Winget & Chocolatey) (#1066)"
This reverts commit 932ec6a0a00f7d2fb9cb3fca2fd4bf7ee74d9ce7.
Revert "Added AIMP music player (#1064)"
This reverts commit d1a4a67a45335450cd82d4960ddf4b8a0e565eef.
Revert "Update inputXML.xaml (#1062)"
This reverts commit 2db4cb556edfce9602f931e37b3ee4f59d9ecf7f.
Revert "Update applications.json (#1063)"
This reverts commit ce7edbd60dda92a00293bf2f727b44af63165838.
Revert ": Add ZeroTier One to utilities menu (#1061)"
This reverts commit 783a9657d0c6a08a9e9ef6e19bd461c8af7c1420.
---------
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
* Compile Winutil
* Invoke-WPFRunspace argument fix (#1497)
* Compile Winutil
* Fixes, Changes & Features Added (Broken links & Comments) (#1476)
* Fixes & Changes (Broken links & Comments)
- Snappy Driver Installer Origin
Github source code deprecated. Replaced with SourceForge official source code site.
- Spacedrive File Manager
"spacedrive.org" not working. Changed to official site.
**Recent Alpha ver 0.2.0 - crashing on install for Win10+ (not tested in "lower" win versions), may be better to remove overall or place on standby.**
- Xtreme Download Manager
Web Integration not working for chromium based browser.
**Deprecated by Manifest V3, no official update release.**
* Update applications.json
Reverted winget for Spacedrive to original.
Spacedrive.FileSystem -> spacedrive.Spacedrive
* Fix for Portmaster [Wrong repo/winget]
* Choco Safing Portmaster
* Added Apps Request
- Added TeCno Account Switcher
Resolves Feature Request n.6° #1451
- Added ATLauncher
- Added OP Auto Clicker
- Added Motrix Download Manager
Resolves Feature Request #1443
* Fixed Panel Numbers
* Added Thonny Python IDE
- Feature Request
#1451
* Update applications.json
fix few missing values
* Update applications.json
add winget thonny
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Fixed typo: latancy to latency (#1492)
* Compile Winutil
* Update inputXML.xaml (#1462)
* Compile Winutil
* Update .gitignore
* add Dax Studio program to the Development category (#1500)
* Compile Winutil
* Add GitHub CLI to applications (#1460)
* Added GitHub CLI to applications
GitHub cli is the command line interface offered by github alongside
github desktop.
For more information see: https://github.com/cli/cli.
Installation instructions taken from: https://github.com/cli/cli#windows
* spelling: removed accidental dot
* Compile Winutil
* Add Vesktop to applications.json (#1461)
* Add Vesktop to applications.json
* fix syntax error
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add some apps (#1466)
* Add some apps
* Fix WPFInstallopenhashtab
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* adds helix to development tools (#1469)
* Compile Winutil
* Add tooltips to config checkboxes (#1470)
* Fix typo
* Update winutil.ps1
* Update winutil.ps1
Add tooltips to checkboxes in config session and rewrite so to make things more clear as to what each tweak does
* Revert "Update winutil.ps1"
This reverts commit aaa69c473ff814a7de9e4f7e4591fa5c0f786ffc.
* Add applications
Added Sonarr, Radarr, Prowlarr and Bazarr in response to an github issue
* Add applications
Added applications to the GUI
* Revert "Add applications"
This reverts commit e5fba2b4ebe8df138aed396e55f3fcee62224cbc.
* Revert "Add applications"
This reverts commit 55ff75a65c563dd649e6cac4868a8484a71656d5.
* Edit xaml files
Editing the xaml files so the changes persist upon compilation
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Add Mumble (#1481)
Add Mumble to Communications category.
* Compile Winutil
* Added 'Stremio' (#1473)
* Compile Winutil
* Update applications.json
Added 'Stremio'
* Compile Winutil
---------
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Add the Mullvad Browser (#1475)
* add mullvad browser
* Missing tab
* fix format
---------
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Added some Applications (#1484)
* Update applications.json
Add:
- Rancher Desktop
- ManicTime
- qFlipper
- ModernFlyouts
- ZoomIt
- StartAllBack
- Wintoys
- Minecraft Launcher
* Update applications.json
added:
- Arduino IDE
- Whatsapp
* Update applications.json
corrected spacing
* Update applications.json
fixed winget commands
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Added WinMerge Application in Development category. (#1485)
WinMerge is an Open Source differencing and merging tool for Windows.
* Compile Winutil
* Fix few app links and add app (issues/1478) (#1495)
* Update some app links
* Update winutil.ps1
Date update
* Add Syncthingtray
Related to the issue: https://github.com/ChrisTitusTech/winutil/issues/1478
* Update applications.json
update putty link
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
* Update applications.json
* Compile Winutil
* App fix and sort
* Add Dual Monitor tools to applications.json (#1504)
* Add Dual Monitor tools to applications.json
* Update applications.json
* Update applications.json
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Compile Winutil
---------
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: Samq64 <81489795+Samq64@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Carter <60557606+Carterpersall@users.noreply.github.com>
Co-authored-by: Justawildwolf <62820836+blusewill@users.noreply.github.com>
Co-authored-by: Tim Stone <github@tsdev.au>
Co-authored-by: Will Barnard <5012445+mrwillbarnz@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: ogfrm <96927197+ogfrm@users.noreply.github.com>
Co-authored-by: v-Kaefer <128633407+v-Kaefer@users.noreply.github.com>
Co-authored-by: Shashank B N <117376750+Athena-2003@users.noreply.github.com>
Co-authored-by: Alex Schwartz <alexschwartz01@gmail.com>
Co-authored-by: André Gonzalez <lopescg@gmail.com>
Co-authored-by: David Hardt <contact@hardt.ai>
Co-authored-by: Choccy Milk <152878702+choccyy-milk@users.noreply.github.com>
Co-authored-by: OmriOn <omri.hermon@gmail.com>
Co-authored-by: Breno Fernandes <fernandesopa@gmail.com>
Co-authored-by: Yuri Gabriel <97139700+Yuuh15@users.noreply.github.com>
Co-authored-by: Filip Zurek <zurfil@tuta.com>
Co-authored-by: H4D3S <32039975+REVENGE977@users.noreply.github.com>
Co-authored-by: REVENGE977 <REVENGE977@users.noreply.github.com>
Co-authored-by: KristjanOmar <117899282+KristjanOmar@users.noreply.github.com>
Co-authored-by: Kristjan <krissiomar@gmail.com>
Co-authored-by: MyDrift <personal@mdiana.ch>
Co-authored-by: Akash Singh <52990376+Akash-S1999@users.noreply.github.com>
Co-authored-by: Roc Wang <rocwang911@gmail.com>
Co-authored-by: José Roberto Sánchez <jose_roberto_ss@hotmail.com>
2024-01-30 12:36:38 -06:00
} catch {
return $False
}
}
Test 2024 01 03 (#1384)
* Increase performance during loading. (#1348)
* Increase performance during loading.
Add a clear button to the search box.
Add link and description attributes to the applications JSON.
Use the link for linking to the app website.
Use the description as a tooltip for each app.
Add a clickable link to the website for each application (this took a long time; don't kick me if I got some wrong).
Pressing Escape now clears the filter box.
Pressing Alt-P prints your PID.
* Fix for services that are being stopped
* Compile winutil
* Adding new Get-LocalizedYesNo based on choice.exe which is faster and more reliable, thank you @dtm-r for implementing it and testing it on English, German, Dutch, French, Italian, Spansich and Russian. Incredible work by @dtm-r, all cridit and props go to him.
See this thread for details https://github.com/ChrisTitusTech/winutil/issues/1324
* Added error-checking logic for mounting ISOs and also created a wiki page that explains some of the errors.
---------
Co-authored-by: KonTy <KonTy@github.com>
* Compile Winutil
* Custom save targets for MicroWin ISOs (#1346)
* Workaround for Explorer freezes
Some people have reported that setting the Event Log service to Automatic and starting it can (temporarily) fix Explorer freezes.
This change detects whether the next service in the list is "EventLog" and skips it
* Allow user to save MicroWin ISOs anywhere
Adds a SaveFileDialog component to let the user specify the location of the MicroWin ISO and uses it during creation with oscdimg.
(It uses a Process object from System.Diagnostics because I couldn't get it to work with Start-Process)
* Removed temporary workaround
Removed my version of the workaround in favor of the version from @KonTy (merge PR #1348 first)
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Highly anticipated fix for small screens (#1358)
* Increase performance during loading.
Add a clear button to the search box.
Add link and description attributes to the applications JSON.
Use the link for linking to the app website.
Use the description as a tooltip for each app.
Add a clickable link to the website for each application (this took a long time; don't kick me if I got some wrong).
Pressing Escape now clears the filter box.
Pressing Alt-P prints your PID.
* Fix for services that are being stopped
* Compile winutil
* Adding new Get-LocalizedYesNo based on choice.exe which is faster and more reliable, thank you @dtm-r for implementing it and testing it on English, German, Dutch, French, Italian, Spansich and Russian. Incredible work by @dtm-r, all cridit and props go to him.
See this thread for details https://github.com/ChrisTitusTech/winutil/issues/1324
* Added error-checking logic for mounting ISOs and also created a wiki page that explains some of the errors.
* Highly anticipated fix for small screen computers
---------
Co-authored-by: KonTy <KonTy@github.com>
* Compile Winutil
* Winutil take a long time to create iso file and goes to sleep, this fixes that issue #1343 (#1371)
Co-authored-by: KonTy <KonTy@github.com>
* Compile Winutil
* Create .gitattributes
* Update .gitattributes
* add winget ventoy package (#1374)
* add winget ventoy package
* convert applications.json to utf-8
* update applications.json again
* Compile Winutil
* Update applications.json
fix encoding
* Compile Winutil
* Fix Encoding and Bad Symbols
* Compile Winutil
* feat: Add more software choices (#1379)
* Compile Winutil
* Update configs.Tests.ps1
* Update winutil.Tests.ps1
* Update applications.json
* Compile Winutil
* Update applications.json
* Compile Winutil
* Update applications.json
* Compile Winutil
* fix functions for unit tests
* Compile Winutil
* Update Invoke-MicroWin-Helper.ps1
* Compile Winutil
* fix name WPF Close Button
* Update inputXML.xaml
* Compile Winutil
* my bad that wasnt it
* modify unit test for stop on error
* Compile Winutil
* Update unittests.yaml
* Create test
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* Compile Winutil
* Make restore points optional, enabled by default (#1380)
* Make restore points optional, enabled by default
* Tweaks order fix if restorepoint is checked
* Compile Winutil
* update unit tests
* Compile Winutil
* Update unittests.yaml
* Update unittests.yaml
* Update winutil.Tests.ps1
* tests
* Compile Winutil
* Update unittests.yaml
* Update unittests.yaml
* Update unittests.yaml
* fix unit test
* Update winutil.Tests.ps1
* rewrite all pester test for winutil
* Compile Winutil
* fix handle is invalid error
* final unit test
---------
Co-authored-by: KonTy <9524513+KonTy@users.noreply.github.com>
Co-authored-by: KonTy <KonTy@github.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
Co-authored-by: CodingWonders <101426328+CodingWonders@users.noreply.github.com>
Co-authored-by: Munkk <152475628+munkk01@users.noreply.github.com>
Co-authored-by: Kiril Vasilev <Kiril.v92@gmail.com>
2024-01-12 00:34:41 -06:00
2024-08-13 12:04:09 -05:00
function Remove-Features ( ) {
2024-08-06 15:35:17 -05:00
<#
. SYNOPSIS
Removes certain features from ISO image
2023-11-28 16:11:11 -06:00
2024-08-06 15:35:17 -05:00
. PARAMETER Name
2024-08-13 12:04:09 -05:00
No Params
2024-08-06 15:35:17 -05:00
. EXAMPLE
2024-08-13 12:04:09 -05:00
Remove-Features
2024-08-06 15:35:17 -05:00
#>
try {
2024-09-09 20:20:55 -05:00
$featlist = ( Get-WindowsOptionalFeature -Path $scratchDir )
2024-08-06 15:35:17 -05:00
$featlist = $featlist | Where-Object {
2024-09-09 20:20:55 -05:00
$_ . FeatureName -NotLike " *Defender* " -AND
$_ . FeatureName -NotLike " *Printing* " -AND
$_ . FeatureName -NotLike " *TelnetClient* " -AND
$_ . FeatureName -NotLike " *PowerShell* " -AND
$_ . FeatureName -NotLike " *NetFx* " -AND
$_ . FeatureName -NotLike " *Media* " -AND
$_ . FeatureName -NotLike " *NFS* " -AND
$_ . State -ne " Disabled "
2024-08-06 15:35:17 -05:00
}
foreach ( $feature in $featlist ) {
2024-09-09 20:20:55 -05:00
$status = " Removing feature $( $feature . FeatureName ) "
2024-08-06 15:35:17 -05:00
Write-Progress -Activity " Removing features " -Status $status -PercentComplete ( $counter + + / $featlist . Count * 100 )
2024-09-09 20:20:55 -05:00
Write-Debug " Removing feature $( $feature . FeatureName ) "
Disable-WindowsOptionalFeature -Path " $scratchDir " -FeatureName $ ( $feature . FeatureName ) -Remove -ErrorAction SilentlyContinue -NoRestart
2024-08-06 15:35:17 -05:00
}
Write-Progress -Activity " Removing features " -Status " Ready " -Completed
Write-Host " You can re-enable the disabled features at any time, using either Windows Update or the SxS folder in <installation media>\Sources. "
} catch {
Write-Host " Unable to get information about the features. MicroWin processing will continue, but features will not be processed "
2024-08-30 09:30:21 -05:00
Write-Host " Error information: $( $_ . Exception . Message ) " -ForegroundColor Yellow
2024-08-06 15:35:17 -05:00
}
2023-11-28 16:11:11 -06:00
}
2024-08-06 15:35:17 -05:00
function Remove-Packages {
try {
$pkglist = ( Get-WindowsPackage -Path " $scratchDir " ) . PackageName
$pkglist = $pkglist | Where-Object {
$_ -NotLike " *ApplicationModel* " -AND
$_ -NotLike " *indows-Client-LanguagePack* " -AND
$_ -NotLike " *LanguageFeatures-Basic* " -AND
$_ -NotLike " *Package_for_ServicingStack* " -AND
$_ -NotLike " *.NET* " -AND
$_ -NotLike " *Store* " -AND
$_ -NotLike " *VCLibs* " -AND
$_ -NotLike " *AAD.BrokerPlugin " ,
$_ -NotLike " *LockApp* " -AND
$_ -NotLike " *Notepad* " -AND
$_ -NotLike " *immersivecontrolpanel* " -AND
$_ -NotLike " *ContentDeliveryManager* " -AND
$_ -NotLike " *PinningConfirMationDialog* " -AND
$_ -NotLike " *SecHealthUI* " -AND
$_ -NotLike " *SecureAssessmentBrowser* " -AND
$_ -NotLike " *PrintDialog* " -AND
$_ -NotLike " *AssignedAccessLockApp* " -AND
$_ -NotLike " *OOBENetworkConnectionFlow* " -AND
$_ -NotLike " *Apprep.ChxApp* " -AND
$_ -NotLike " *CBS* " -AND
$_ -NotLike " *OOBENetworkCaptivePortal* " -AND
$_ -NotLike " *PeopleExperienceHost* " -AND
$_ -NotLike " *ParentalControls* " -AND
$_ -NotLike " *Win32WebViewHost* " -AND
$_ -NotLike " *InputApp* " -AND
$_ -NotLike " *AccountsControl* " -AND
$_ -NotLike " *AsyncTextService* " -AND
$_ -NotLike " *CapturePicker* " -AND
$_ -NotLike " *CredDialogHost* " -AND
$_ -NotLike " *BioEnrollMent* " -AND
$_ -NotLike " *ShellExperienceHost* " -AND
$_ -NotLike " *DesktopAppInstaller* " -AND
$_ -NotLike " *WebMediaExtensions* " -AND
$_ -NotLike " *WMIC* " -AND
2024-08-16 00:12:44 -05:00
$_ -NotLike " *UI.XaML* " -AND
$_ -NotLike " *Ethernet* " -AND
$_ -NotLike " *Wifi* "
2024-08-06 15:35:17 -05:00
}
2024-08-30 09:30:21 -05:00
$failedCount = 0
2024-08-06 15:35:17 -05:00
foreach ( $pkg in $pkglist ) {
try {
$status = " Removing $pkg "
Write-Progress -Activity " Removing Apps " -Status $status -PercentComplete ( $counter + + / $pkglist . Count * 100 )
Remove-WindowsPackage -Path " $scratchDir " -PackageName $pkg -NoRestart -ErrorAction SilentlyContinue
} catch {
# This can happen if the package that is being removed is a permanent one, like FodMetadata
Write-Host " Could not remove OS package $( $pkg ) "
2024-08-30 09:30:21 -05:00
$failedCount + = 1
2024-08-06 15:35:17 -05:00
continue
}
}
Write-Progress -Activity " Removing Apps " -Status " Ready " -Completed
2024-08-30 09:30:21 -05:00
if ( $failedCount -gt 0 )
{
Write-Host " Some packages could not be removed. Do not worry: your image will still work fine. This can happen if the package is permanent or has been superseded by a newer one. "
}
2024-08-06 15:35:17 -05:00
} catch {
Write-Host " Unable to get information about the packages. MicroWin processing will continue, but packages will not be processed "
2024-08-30 09:30:21 -05:00
Write-Host " Error information: $( $_ . Exception . Message ) " -ForegroundColor Yellow
2024-08-06 15:35:17 -05:00
}
}
2024-01-03 09:49:23 -06:00
2024-08-13 12:04:09 -05:00
function Remove-ProvisionedPackages ( ) {
2024-08-06 15:35:17 -05:00
<#
. SYNOPSIS
2024-01-03 09:49:23 -06:00
Removes AppX packages from a Windows image during MicroWin processing
2024-08-06 15:35:17 -05:00
. PARAMETER Name
2024-08-13 12:04:09 -05:00
No Params
2024-01-03 09:49:23 -06:00
2024-08-06 15:35:17 -05:00
. EXAMPLE
2024-08-13 12:04:09 -05:00
Remove-ProvisionedPackages
2024-08-06 15:35:17 -05:00
#>
2024-08-14 14:31:24 -05:00
try
{
$appxProvisionedPackages = Get-AppxProvisionedPackage -Path " $( $scratchDir ) " | Where-Object {
$_ . PackageName -NotLike " *AppInstaller* " -AND
$_ . PackageName -NotLike " *Store* " -and
$_ . PackageName -NotLike " *dism* " -and
$_ . PackageName -NotLike " *Foundation* " -and
$_ . PackageName -NotLike " *FodMetadata* " -and
$_ . PackageName -NotLike " *LanguageFeatures* " -and
$_ . PackageName -NotLike " *Notepad* " -and
$_ . PackageName -NotLike " *Printing* " -and
$_ . PackageName -NotLike " *Foundation* " -and
$_ . PackageName -NotLike " *YourPhone* " -and
$_ . PackageName -NotLike " *Xbox* " -and
$_ . PackageName -NotLike " *WindowsTerminal* " -and
$_ . PackageName -NotLike " *Calculator* " -and
$_ . PackageName -NotLike " *Photos* " -and
$_ . PackageName -NotLike " *VCLibs* " -and
$_ . PackageName -NotLike " *Paint* " -and
$_ . PackageName -NotLike " *Gaming* " -and
$_ . PackageName -NotLike " *Extension* " -and
2024-09-15 14:22:32 -05:00
$_ . PackageName -NotLike " *SecHealthUI* " -and
$_ . PackageName -NotLike " *ScreenSketch* "
2024-08-06 15:35:17 -05:00
}
2024-08-14 14:31:24 -05:00
$counter = 0
foreach ( $appx in $appxProvisionedPackages ) {
$status = " Removing Provisioned $( $appx . PackageName ) "
Write-Progress -Activity " Removing Provisioned Apps " -Status $status -PercentComplete ( $counter + + / $appxProvisionedPackages . Count * 100 )
try {
Remove-AppxProvisionedPackage -Path " $scratchDir " -PackageName $appx . PackageName -ErrorAction SilentlyContinue
} catch {
Write-Host " Application $( $appx . PackageName ) could not be removed "
continue
}
2024-08-06 15:35:17 -05:00
}
2024-08-14 14:31:24 -05:00
Write-Progress -Activity " Removing Provisioned Apps " -Status " Ready " -Completed
}
catch
{
# This can happen if getting AppX packages fails
Write-Host " Unable to get information about the AppX packages. MicroWin processing will continue, but AppX packages will not be processed "
2024-08-30 09:30:21 -05:00
Write-Host " Error information: $( $_ . Exception . Message ) " -ForegroundColor Yellow
2024-01-02 15:45:06 -06:00
}
2023-11-28 16:11:11 -06:00
}
2024-08-06 15:35:17 -05:00
function Copy-ToUSB([string]$fileToCopy ) {
foreach ( $volume in Get-Volume ) {
if ( $volume -and $volume . FileSystemLabel -ieq " ventoy " ) {
$destinationPath = " $( $volume . DriveLetter ) :\ "
#Copy-Item -Path $fileToCopy -Destination $destinationPath -Force
# Get the total size of the file
2024-08-12 15:03:38 -05:00
$totalSize = ( Get-Item " $fileToCopy " ) . length
2024-08-06 15:35:17 -05:00
2024-08-12 15:03:38 -05:00
Copy-Item -Path " $fileToCopy " -Destination " $destinationPath " -Verbose -Force -Recurse -Container -PassThru |
2024-08-06 15:35:17 -05:00
ForEach-Object {
# Calculate the percentage completed
$completed = ( $_ . BytesTransferred / $totalSize ) * 100
# Display the progress bar
Write-Progress -Activity " Copying File " -Status " Progress " -PercentComplete $completed -CurrentOperation ( " {0:N2} MB / {1:N2} MB " -f ( $_ . BytesTransferred / 1 MB ) , ( $totalSize / 1 MB ) )
}
Write-Host " File copied to Ventoy drive $( $volume . DriveLetter ) "
return
}
}
Write-Host " Ventoy USB Key is not inserted "
2023-11-28 16:11:11 -06:00
}
2024-08-06 15:35:17 -05:00
function Remove-FileOrDirectory([string]$pathToDelete , [ string ] $mask = " " , [ switch ] $Directory = $false ) {
if ( ( [ string ] :: IsNullOrEmpty ( $pathToDelete ) ) ) { return }
if ( -not ( Test-Path -Path " $( $pathToDelete ) " ) ) { return }
$yesNo = Get-LocalizedYesNo
Write-Host " [INFO] In Your local takeown expects ' $( $yesNo [ 0 ] ) ' as a Yes answer. "
$itemsToDelete = [ System.Collections.ArrayList ] :: new ( )
if ( $mask -eq " " ) {
Write-Debug " Adding $( $pathToDelete ) to array. "
[ void ] $itemsToDelete . Add ( $pathToDelete )
} else {
Write-Debug " Adding $( $pathToDelete ) to array and mask is $( $mask ) "
if ( $Directory ) { $itemsToDelete = Get-ChildItem $pathToDelete -Include $mask -Recurse -Directory } else { $itemsToDelete = Get-ChildItem $pathToDelete -Include $mask -Recurse }
}
foreach ( $itemToDelete in $itemsToDelete ) {
$status = " Deleting $( $itemToDelete ) "
Write-Progress -Activity " Removing Items " -Status $status -PercentComplete ( $counter + + / $itemsToDelete . Count * 100 )
if ( Test-Path -Path " $( $itemToDelete ) " -PathType Container ) {
$status = " Deleting directory: $( $itemToDelete ) "
takeown / r / d $yesNo [ 0 ] / a / f " $( $itemToDelete ) "
icacls " $( $itemToDelete ) " / q / c / t / reset
icacls $itemToDelete / setowner " *S-1-5-32-544 "
icacls $itemToDelete / grant " *S-1-5-32-544:(OI)(CI)F " / t / c / q
Remove-Item -Force -Recurse " $( $itemToDelete ) "
}
elseif ( Test-Path -Path " $( $itemToDelete ) " -PathType Leaf ) {
$status = " Deleting file: $( $itemToDelete ) "
takeown / a / f " $( $itemToDelete ) "
icacls " $( $itemToDelete ) " / q / c / t / reset
icacls " $( $itemToDelete ) " / setowner " *S-1-5-32-544 "
icacls " $( $itemToDelete ) " / grant " *S-1-5-32-544:(OI)(CI)F " / t / c / q
Remove-Item -Force " $( $itemToDelete ) "
}
}
Write-Progress -Activity " Removing Items " -Status " Ready " -Completed
2023-11-28 16:11:11 -06:00
}
function New-Unattend {
2024-08-19 14:21:12 -05:00
param (
2024-08-28 15:37:59 -05:00
[ Parameter ( Mandatory , Position = 0 ) ] [ string ] $userName ,
2024-09-09 20:05:10 -05:00
[ Parameter ( Position = 1 ) ] [ string ] $userPassword
2024-08-19 14:21:12 -05:00
)
2024-08-06 15:35:17 -05:00
$unattend = @ '
< ? xml version = " 1.0 " encoding = " utf-8 " ? >
< unattend xmlns = " urn:schemas-microsoft-com:unattend "
xmlns : wcm = " http://schemas.microsoft.com/WMIConfig/2002/State "
xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance " >
<# REPLACEME #>
< settings pass = " auditUser " >
< component name = " Microsoft-Windows-Deployment " processorArchitecture = " amd64 " publicKeyToken = " 31bf3856ad364e35 " language = " neutral " versionScope = " nonSxS " xmlns : wcm = " http://schemas.microsoft.com/WMIConfig/2002/State " xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance " >
< RunSynchronous >
< RunSynchronousCommand wcm : action = " add " >
< Order > 1 < / Order >
< CommandLine > CMD / C echo LAU GG & gt ; C: \ Windows \ LogAuditUser . txt < / CommandLine >
< Description > StartMenu < / Description >
< / RunSynchronousCommand >
< / RunSynchronous >
2024-03-21 18:23:24 -05:00
< / component >
2024-08-06 15:35:17 -05:00
< / settings >
< settings pass = " oobeSystem " >
2024-03-21 18:23:24 -05:00
< component name = " Microsoft-Windows-Shell-Setup " processorArchitecture = " amd64 " publicKeyToken = " 31bf3856ad364e35 " language = " neutral " versionScope = " nonSxS " xmlns : wcm = " http://schemas.microsoft.com/WMIConfig/2002/State " xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance " >
2024-08-13 11:07:52 -05:00
< UserAccounts >
< LocalAccounts >
< LocalAccount wcm : action = " add " >
2024-08-19 14:21:12 -05:00
< Name > USER-REPLACEME < / Name >
2024-08-13 11:07:52 -05:00
< Group > Administrators < / Group >
< Password >
2024-08-19 14:21:12 -05:00
< Value > PW-REPLACEME < / Value >
2024-08-13 11:07:52 -05:00
< PlainText > true < / PlainText >
< / Password >
< / LocalAccount >
< / LocalAccounts >
< / UserAccounts >
< AutoLogon >
2024-08-19 14:21:12 -05:00
< Username > USER-REPLACEME < / Username >
2024-08-13 11:07:52 -05:00
< Enabled > true < / Enabled >
< LogonCount > 1 < / LogonCount >
< Password >
2024-08-19 14:21:12 -05:00
< Value > PW-REPLACEME < / Value >
2024-08-13 11:07:52 -05:00
< PlainText > true < / PlainText >
< / Password >
< / AutoLogon >
2024-08-06 15:35:17 -05:00
< OOBE >
2024-08-13 11:07:52 -05:00
< HideOEMRegistrationScreen > true < / HideOEMRegistrationScreen >
< SkipUserOOBE > true < / SkipUserOOBE >
< SkipMachineOOBE > true < / SkipMachineOOBE >
2024-08-06 15:35:17 -05:00
< HideOnlineAccountScreens > true < / HideOnlineAccountScreens >
< HideWirelessSetupInOOBE > true < / HideWirelessSetupInOOBE >
< HideEULAPage > true < / HideEULAPage >
< ProtectYourPC > 3 < / ProtectYourPC >
< / OOBE >
< FirstLogonCommands >
< SynchronousCommand wcm : action = " add " >
< Order > 1 < / Order >
2024-08-13 11:07:52 -05:00
< CommandLine > reg . exe add " HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon " / v AutoLogonCount / t REG_DWORD / d 0 / f < / CommandLine >
2024-08-06 15:35:17 -05:00
< / SynchronousCommand >
< SynchronousCommand wcm : action = " add " >
< Order > 2 < / Order >
2024-08-13 11:07:52 -05:00
< CommandLine > cmd . exe / c echo 23 & gt ; c: \ windows \ csup . txt < / CommandLine >
2024-08-06 15:35:17 -05:00
< / SynchronousCommand >
< SynchronousCommand wcm : action = " add " >
< Order > 3 < / Order >
2024-08-13 11:07:52 -05:00
< CommandLine > CMD / C echo GG & gt ; C: \ Windows \ LogOobeSystem . txt < / CommandLine >
< / SynchronousCommand >
< SynchronousCommand wcm : action = " add " >
< Order > 4 < / Order >
2024-08-06 15:35:17 -05:00
< CommandLine > powershell -ExecutionPolicy Bypass -File c: \ windows \ FirstStartup . ps1 < / CommandLine >
< / SynchronousCommand >
< / FirstLogonCommands >
2024-03-21 18:23:24 -05:00
< / component >
< / settings >
2024-08-06 15:35:17 -05:00
< / unattend >
2024-03-21 18:23:24 -05:00
' @
2024-08-06 15:35:17 -05:00
$specPass = @ '
< settings pass = " specialize " >
< component name = " Microsoft-Windows-SQMApi " processorArchitecture = " amd64 " publicKeyToken = " 31bf3856ad364e35 " language = " neutral " versionScope = " nonSxS " xmlns : wcm = " http://schemas.microsoft.com/WMIConfig/2002/State " xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance " >
2024-08-13 11:07:52 -05:00
< CEIPEnabled > 0 < / CEIPEnabled >
2024-08-06 15:35:17 -05:00
< / component >
< component name = " Microsoft-Windows-Shell-Setup " processorArchitecture = " amd64 " publicKeyToken = " 31bf3856ad364e35 " language = " neutral " versionScope = " nonSxS " xmlns : wcm = " http://schemas.microsoft.com/WMIConfig/2002/State " xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance " >
2024-08-13 11:07:52 -05:00
< ConfigureChatAutoInstall > false < / ConfigureChatAutoInstall >
< / component >
< component name = " Microsoft-Windows-Deployment " processorArchitecture = " amd64 " publicKeyToken = " 31bf3856ad364e35 " language = " neutral " versionScope = " nonSxS " >
< RunSynchronous >
< RunSynchronousCommand wcm : action = " add " >
< Order > 1 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE " / v BypassNRO / t REG_DWORD / d 1 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 2 < / Order >
< Path > reg . exe load " HKU\DefaultUser " " C:\Users\Default\NTUSER.DAT " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 3 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Runonce " / v " UninstallCopilot " / t REG_SZ / d " powershell.exe -NoProfile -Command \ " Get-AppxPackage -Name 'Microsoft.Windows.Ai.Copilot.Provider' | Remove-AppxPackage ; \ " " / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 4 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Policies\Microsoft\Windows\WindowsCopilot " / v TurnOffWindowsCopilot / t REG_DWORD / d 1 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 5 < / Order >
< Path > reg . exe unload " HKU\DefaultUser " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 6 < / Order >
< Path > reg . exe delete " HKLM\SOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\DevHomeUpdate " / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 7 < / Order >
< Path > reg . exe load " HKU\DefaultUser " " C:\Users\Default\NTUSER.DAT " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 8 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Notepad " / v ShowStoreBanner / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 9 < / Order >
< Path > reg . exe unload " HKU\DefaultUser " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 10 < / Order >
< Path > cmd . exe / c " del " C: \ Users \ Default \ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ OneDrive . lnk " " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 11 < / Order >
< Path > cmd . exe / c " del " C: \ Windows \ System32 \ OneDriveSetup . exe " " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 12 < / Order >
< Path > cmd . exe / c " del " C: \ Windows \ SysWOW64 \ OneDriveSetup . exe " " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 13 < / Order >
< Path > reg . exe load " HKU\DefaultUser " " C:\Users\Default\NTUSER.DAT " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 14 < / Order >
< Path > reg . exe delete " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Run " / v OneDriveSetup / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 15 < / Order >
< Path > reg . exe unload " HKU\DefaultUser " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 16 < / Order >
< Path > reg . exe delete " HKLM\SOFTWARE\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\OutlookUpdate " / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 17 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Communications " / v ConfigureChatAutoInstall / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 18 < / Order >
< Path > powershell . exe -NoProfile -Command " $xml = [xml]::new(); $xml .Load('C:\Windows\Panther\unattend.xml'); $sb = [scriptblock]::Create( $xml .unattend.Extensions.ExtractScript ); Invoke-Command -ScriptBlock $sb -ArgumentList $xml ; " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 19 < / Order >
< Path > powershell . exe -NoProfile -Command " Get-Content -LiteralPath 'C:\Windows\Temp\remove-packages.ps1' -Raw | Invoke-Expression; " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 20 < / Order >
< Path > powershell . exe -NoProfile -Command " Get-Content -LiteralPath 'C:\Windows\Temp\remove-caps.ps1' -Raw | Invoke-Expression; " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 21 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\PolicyManager\current\device\Start " / v ConfigureStartPins / t REG_SZ / d " { \ " pinnedList \ " : [] } " / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 22 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\PolicyManager\current\device\Start " / v ConfigureStartPins_ProviderSet / t REG_DWORD / d 1 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 23 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\PolicyManager\current\device\Start " / v ConfigureStartPins_WinningProvider / t REG_SZ / d B5292708 - 1619 - 419B - 9923 -E5D9F3925E71 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 24 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\PolicyManager\providers\B5292708-1619-419B-9923-E5D9F3925E71\default\Device\Start " / v ConfigureStartPins / t REG_SZ / d " { \ " pinnedList \ " : [] } " / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 25 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Microsoft\PolicyManager\providers\B5292708-1619-419B-9923-E5D9F3925E71\default\Device\Start " / v ConfigureStartPins_LastWrite / t REG_DWORD / d 1 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 26 < / Order >
< Path > net . exe accounts / maxpwage : UNLIMITED < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 27 < / Order >
< Path > reg . exe add " HKLM\SYSTEM\CurrentControlSet\Control\FileSystem " / v LongPathsEnabled / t REG_DWORD / d 1 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 28 < / Order >
< Path > reg . exe add " HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power " / v HiberbootEnabled / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 29 < / Order >
< Path > reg . exe add " HKLM\SOFTWARE\Policies\Microsoft\Dsh " / v AllowNewsAndInterests / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 30 < / Order >
< Path > reg . exe load " HKU\DefaultUser " " C:\Users\Default\NTUSER.DAT " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 31 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " ContentDeliveryAllowed " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 32 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " FeatureManagementEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 33 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " OEMPreInstalledAppsEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 34 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " PreInstalledAppsEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 35 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " PreInstalledAppsEverEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 36 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SilentInstalledAppsEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 37 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SoftLandingEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 38 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContentEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 39 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContent-310093Enabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 40 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContent-338387Enabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 41 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContent-338388Enabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 42 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContent-338389Enabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 43 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContent-338393Enabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 44 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SubscribedContent-353698Enabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 45 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager " / v " SystemPaneSuggestionsEnabled " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 46 < / Order >
< Path > reg . exe unload " HKU\DefaultUser " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 47 < / Order >
< Path > reg . exe add " HKLM\Software\Policies\Microsoft\Windows\CloudContent " / v " DisableWindowsConsumerFeatures " / t REG_DWORD / d 0 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 48 < / Order >
< Path > reg . exe add " HKLM\SYSTEM\CurrentControlSet\Control\BitLocker " / v " PreventDeviceEncryption " / t REG_DWORD / d 1 / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 49 < / Order >
< Path > reg . exe load " HKU\DefaultUser " " C:\Users\Default\NTUSER.DAT " < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 50 < / Order >
< Path > reg . exe add " HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Runonce " / v " ClassicContextMenu " / t REG_SZ / d " reg.exe add \ " HKCU \ Software \ Classes \ CLSID \ { 86ca1aa0 - 34aa - 4e8b -a509 - 50c905bae2a2 } \ InprocServer32 \ " /ve /f " / f < / Path >
< / RunSynchronousCommand >
< RunSynchronousCommand wcm : action = " add " >
< Order > 51 < / Order >
< Path > reg . exe unload " HKU\DefaultUser " < / Path >
< / RunSynchronousCommand >
< / RunSynchronous >
2024-08-06 15:35:17 -05:00
< / component >
< / settings >
' @
if ( ( Test-CompatibleImage $imgVersion $ ( [ System.Version ] :: new ( 10 , 0 , 22000 , 1 ) ) ) -eq $false ) {
# Replace the placeholder text with an empty string to make it valid for Windows 10 Setup
$unattend = $unattend . Replace ( " <#REPLACEME#> " , " " ) . Trim ( )
} else {
# Replace the placeholder text with the Specialize pass
$unattend = $unattend . Replace ( " <#REPLACEME#> " , $specPass ) . Trim ( )
2024-03-21 18:23:24 -05:00
}
2024-08-19 14:21:12 -05:00
# Replace default User and Password values with the provided parameters
$unattend = $unattend . Replace ( " USER-REPLACEME " , $userName ) . Trim ( )
$unattend = $unattend . Replace ( " PW-REPLACEME " , $userPassword ) . Trim ( )
# Save unattended answer file with UTF-8 encoding
2024-08-06 15:35:17 -05:00
$unattend | Out-File -FilePath " $env:temp \unattend.xml " -Force -Encoding utf8
2023-11-28 16:11:11 -06:00
}
function New-CheckInstall {
2024-08-06 15:35:17 -05:00
# using here string to embedd firstrun
$checkInstall = @ '
@echo off
if exist " C:\windows\cpu.txt " (
echo C: \ windows \ cpu . txt exists
) else (
echo C: \ windows \ cpu . txt does not exist
)
if exist " C:\windows\SerialNumber.txt " (
echo C: \ windows \ SerialNumber . txt exists
) else (
echo C: \ windows \ SerialNumber . txt does not exist
)
if exist " C:\unattend.xml " (
echo C: \ unattend . xml exists
) else (
echo C: \ unattend . xml does not exist
)
if exist " C:\Windows\Setup\Scripts\SetupComplete.cmd " (
echo C: \ Windows \ Setup \ Scripts \ SetupComplete . cmd exists
) else (
echo C: \ Windows \ Setup \ Scripts \ SetupComplete . cmd does not exist
)
if exist " C:\Windows\Panther\unattend.xml " (
echo C: \ Windows \ Panther \ unattend . xml exists
) else (
echo C: \ Windows \ Panther \ unattend . xml does not exist
)
if exist " C:\Windows\System32\Sysprep\unattend.xml " (
echo C: \ Windows \ System32 \ Sysprep \ unattend . xml exists
) else (
echo C: \ Windows \ System32 \ Sysprep \ unattend . xml does not exist
)
if exist " C:\Windows\FirstStartup.ps1 " (
echo C: \ Windows \ FirstStartup . ps1 exists
) else (
echo C: \ Windows \ FirstStartup . ps1 does not exist
)
if exist " C:\Windows\winutil.ps1 " (
echo C: \ Windows \ winutil . ps1 exists
) else (
echo C: \ Windows \ winutil . ps1 does not exist
)
if exist " C:\Windows\LogSpecialize.txt " (
echo C: \ Windows \ LogSpecialize . txt exists
) else (
echo C: \ Windows \ LogSpecialize . txt does not exist
)
if exist " C:\Windows\LogAuditUser.txt " (
echo C: \ Windows \ LogAuditUser . txt exists
) else (
echo C: \ Windows \ LogAuditUser . txt does not exist
)
if exist " C:\Windows\LogOobeSystem.txt " (
echo C: \ Windows \ LogOobeSystem . txt exists
) else (
echo C: \ Windows \ LogOobeSystem . txt does not exist
)
if exist " c:\windows\csup.txt " (
echo c: \ windows \ csup . txt exists
) else (
echo c: \ windows \ csup . txt does not exist
)
if exist " c:\windows\LogFirstRun.txt " (
echo c: \ windows \ LogFirstRun . txt exists
) else (
echo c: \ windows \ LogFirstRun . txt does not exist
)
2023-11-28 16:11:11 -06:00
' @
2024-08-06 15:35:17 -05:00
$checkInstall | Out-File -FilePath " $env:temp \checkinstall.cmd " -Force -Encoding Ascii
2023-11-28 16:11:11 -06:00
}
function New-FirstRun {
2024-08-06 15:35:17 -05:00
# using here string to embedd firstrun
$firstRun = @ '
# Set the global error action preference to continue
$ErrorActionPreference = " Continue "
function Remove-RegistryValue {
param (
[ Parameter ( Mandatory = $true ) ]
[ string ] $RegistryPath ,
[ Parameter ( Mandatory = $true ) ]
[ string ] $ValueName
)
# Check if the registry path exists
if ( Test-Path -Path $RegistryPath ) {
$registryValue = Get-ItemProperty -Path $RegistryPath -Name $ValueName -ErrorAction SilentlyContinue
# Check if the registry value exists
if ( $registryValue ) {
# Remove the registry value
Remove-ItemProperty -Path $RegistryPath -Name $ValueName -Force
Write-Host " Registry value ' $ValueName ' removed from ' $RegistryPath '. "
} else {
Write-Host " Registry value ' $ValueName ' not found in ' $RegistryPath '. "
}
} else {
Write-Host " Registry path ' $RegistryPath ' not found. "
}
}
" FirstStartup has worked " | Out-File -FilePath c: \ windows \ LogFirstRun . txt -Append -NoClobber
$taskbarPath = " $env:AppData \Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar "
# Delete all files on the Taskbar
Get-ChildItem -Path $taskbarPath -File | Remove-Item -Force
Remove-RegistryValue -RegistryPath " HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband " -ValueName " FavoritesRemovedChanges "
Remove-RegistryValue -RegistryPath " HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband " -ValueName " FavoritesChanges "
Remove-RegistryValue -RegistryPath " HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband " -ValueName " Favorites "
# Delete Edge Icon from the desktop
$edgeShortcutFiles = Get-ChildItem -Path $desktopPath -Filter " *Edge*.lnk "
# Check if Edge shortcuts exist on the desktop
if ( $edgeShortcutFiles ) {
foreach ( $shortcutFile in $edgeShortcutFiles ) {
# Remove each Edge shortcut
Remove-Item -Path $shortcutFile . FullName -Force
Write-Host " Edge shortcut ' $( $shortcutFile . Name ) ' removed from the desktop. "
}
}
Remove-Item -Path " $env:USERPROFILE \Desktop\*.lnk "
Remove-Item -Path " C:\Users\Default\Desktop\*.lnk "
# ************************************************
# Create WinUtil shortcut on the desktop
#
$desktopPath = " $( $env:USERPROFILE ) \Desktop "
# Specify the target PowerShell command
$command = " powershell.exe -NoProfile -ExecutionPolicy Bypass -Command 'irm https://christitus.com/win | iex' "
# Specify the path for the shortcut
$shortcutPath = Join-Path $desktopPath 'winutil.lnk'
# Create a shell object
$shell = New-Object -ComObject WScript . Shell
# Create a shortcut object
$shortcut = $shell . CreateShortcut ( $shortcutPath )
if ( Test-Path -Path " c:\Windows\cttlogo.png " ) {
$shortcut . IconLocation = " c:\Windows\cttlogo.png "
}
# Set properties of the shortcut
$shortcut . TargetPath = " powershell.exe "
$shortcut . Arguments = " -NoProfile -ExecutionPolicy Bypass -Command `" $command `" "
# Save the shortcut
$shortcut . Save ( )
# Make the shortcut have 'Run as administrator' property on
$bytes = [ System.IO.File ] :: ReadAllBytes ( $shortcutPath )
# Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex
$bytes [ 0x15 ] = $bytes [ 0x15 ] -bor 0x20
[ System.IO.File ] :: WriteAllBytes ( $shortcutPath , $bytes )
Write-Host " Shortcut created at: $shortcutPath "
#
# Done create WinUtil shortcut on the desktop
# ************************************************
Start-Process explorer
2024-06-28 17:15:39 -05:00
2023-11-28 16:11:11 -06:00
' @
2024-08-06 15:35:17 -05:00
$firstRun | Out-File -FilePath " $env:temp \FirstStartup.ps1 " -Force
2024-03-21 18:23:24 -05:00
}