From 421fb763204b8ab45961dbfb0aa7856e1e47e6c3 Mon Sep 17 00:00:00 2001
From: rbalsleyMSFT <53497092+rbalsleyMSFT@users.noreply.github.com>
Date: Thu, 29 May 2025 12:54:15 -0700
Subject: [PATCH] Add 'Update Latest Microcode' checkbox to UI and update
related logic for handling microcode updates
---
FFUDevelopment/BuildFFUVM_UI.ps1 | 5 ++++-
FFUDevelopment/BuildFFUVM_UI.xaml | 1 +
FFUDevelopment/FFUUI.Core/FFUUI.Core.psm1 | 1 +
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/FFUDevelopment/BuildFFUVM_UI.ps1 b/FFUDevelopment/BuildFFUVM_UI.ps1
index ba48f0b..c7a2015 100644
--- a/FFUDevelopment/BuildFFUVM_UI.ps1
+++ b/FFUDevelopment/BuildFFUVM_UI.ps1
@@ -656,7 +656,7 @@ function Get-UIConfig {
UpdateEdge = $window.FindName('chkUpdateEdge').IsChecked
UpdateLatestCU = $window.FindName('chkUpdateLatestCU').IsChecked
UpdateLatestDefender = $window.FindName('chkUpdateLatestDefender').IsChecked
- UpdateLatestMicrocode = $false # Parameter from Sample_default.json, no UI control
+ UpdateLatestMicrocode = $script:chkUpdateLatestMicrocode.IsChecked
UpdateLatestMSRT = $window.FindName('chkUpdateLatestMSRT').IsChecked
UpdateLatestNet = $window.FindName('chkUpdateLatestNet').IsChecked
UpdateOneDrive = $window.FindName('chkUpdateOneDrive').IsChecked
@@ -1603,6 +1603,7 @@ $window.Add_Loaded({
$script:chkCompressDriversToWIM = $window.FindName('chkCompressDriversToWIM')
$script:chkRemoveApps = $window.FindName('chkRemoveApps')
$script:chkRemoveUpdates = $window.FindName('chkRemoveUpdates')
+ $script:chkUpdateLatestMicrocode = $window.FindName('chkUpdateLatestMicrocode') # Added for UpdateLatestMicrocode
# AppsScriptVariables Controls
$script:chkDefineAppsScriptVariables = $window.FindName('chkDefineAppsScriptVariables')
@@ -1790,6 +1791,7 @@ $window.Add_Loaded({
$window.FindName('chkUpdateEdge').IsChecked = $script:generalDefaults.UpdateEdge
$window.FindName('chkUpdateOneDrive').IsChecked = $script:generalDefaults.UpdateOneDrive
$window.FindName('chkUpdateLatestMSRT').IsChecked = $script:generalDefaults.UpdateLatestMSRT
+ $script:chkUpdateLatestMicrocode.IsChecked = $script:generalDefaults.UpdateLatestMicrocode # Added for UpdateLatestMicrocode
$window.FindName('chkUpdatePreviewCU').IsChecked = $script:generalDefaults.UpdatePreviewCU
# Applications tab defaults from General Defaults
@@ -3107,6 +3109,7 @@ $btnLoadConfig.Add_Click({
Set-UIValue -ControlName 'chkUpdateEdge' -PropertyName 'IsChecked' -ConfigObject $configContent -ConfigKey 'UpdateEdge' -WindowInstance $window
Set-UIValue -ControlName 'chkUpdateOneDrive' -PropertyName 'IsChecked' -ConfigObject $configContent -ConfigKey 'UpdateOneDrive' -WindowInstance $window
Set-UIValue -ControlName 'chkUpdateLatestMSRT' -PropertyName 'IsChecked' -ConfigObject $configContent -ConfigKey 'UpdateLatestMSRT' -WindowInstance $window
+ Set-UIValue -ControlName 'chkUpdateLatestMicrocode' -PropertyName 'IsChecked' -ConfigObject $configContent -ConfigKey 'UpdateLatestMicrocode' -WindowInstance $window # Added for UpdateLatestMicrocode
Set-UIValue -ControlName 'chkUpdatePreviewCU' -PropertyName 'IsChecked' -ConfigObject $configContent -ConfigKey 'UpdatePreviewCU' -WindowInstance $window
# Applications tab
diff --git a/FFUDevelopment/BuildFFUVM_UI.xaml b/FFUDevelopment/BuildFFUVM_UI.xaml
index 213dd2e..5c04bc4 100644
--- a/FFUDevelopment/BuildFFUVM_UI.xaml
+++ b/FFUDevelopment/BuildFFUVM_UI.xaml
@@ -400,6 +400,7 @@
+
diff --git a/FFUDevelopment/FFUUI.Core/FFUUI.Core.psm1 b/FFUDevelopment/FFUUI.Core/FFUUI.Core.psm1
index afc7bfe..37d2736 100644
--- a/FFUDevelopment/FFUUI.Core/FFUUI.Core.psm1
+++ b/FFUDevelopment/FFUUI.Core/FFUUI.Core.psm1
@@ -309,6 +309,7 @@ function Get-GeneralDefaults {
UpdateEdge = $false
UpdateOneDrive = $false
UpdateLatestMSRT = $false
+ UpdateLatestMicrocode = $false # Added for UpdateLatestMicrocode UI control
UpdatePreviewCU = $false
# Applications Tab Defaults
InstallApps = $false