Skip to content

Commit

Permalink
Add explicit option to use product key from firmware
Browse files Browse the repository at this point in the history
  • Loading branch information
cschneegans committed Feb 6, 2025
1 parent 5c9787e commit 89b2d2d
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 4 deletions.
15 changes: 11 additions & 4 deletions modifier/ProductKey.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ public interface IEditionSettings;

public class InteractiveEditionSettings : IEditionSettings;

public record class FirmwareEditionSettings : IEditionSettings;

public record class UnattendedEditionSettings(
WindowsEdition Edition
) : IEditionSettings;
Expand Down Expand Up @@ -34,12 +36,17 @@ class ProductKeyModifier(ModifierContext context) : Modifier(context)
{
public override void Process()
{
Document.SelectSingleNodeOrThrow("//u:ProductKey/u:Key", NamespaceManager).InnerText = Configuration.EditionSettings switch
const string zero = "00000-00000-00000-00000-00000";
(string key, string ui) = Configuration.EditionSettings switch
{
UnattendedEditionSettings settings => settings.Edition.ProductKey,
CustomEditionSettings settings => settings.ProductKey,
InteractiveEditionSettings => "00000-00000-00000-00000-00000",
UnattendedEditionSettings settings => (settings.Edition.ProductKey, "OnError"),
CustomEditionSettings settings => (settings.ProductKey, "OnError"),
InteractiveEditionSettings => (zero, "Always"),
FirmwareEditionSettings => (zero, "OnError"),
_ => throw new NotSupportedException()
};

Document.SelectSingleNodeOrThrow("//u:ProductKey/u:Key", NamespaceManager).InnerText = key;
Document.SelectSingleNodeOrThrow("//u:ProductKey/u:WillShowUI", NamespaceManager).InnerText = ui;
}
}
1 change: 1 addition & 0 deletions resource/autounattend.xml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
<UserData>
<ProductKey>
<Key />
<WillShowUI />
</ProductKey>
<AcceptEula>true</AcceptEula>
</UserData>
Expand Down

0 comments on commit 89b2d2d

Please sign in to comment.