Skip to content

Commit eb05a00

Browse files
committed
Merge branch 'release/5.24.0'
Release v5.24.0
2 parents 7ffa03e + 766d740 commit eb05a00

3 files changed

Lines changed: 101 additions & 35 deletions

File tree

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,3 +65,9 @@
6565
__history/
6666
__recovery/
6767
*.~*
68+
69+
# -------------
70+
# Release files
71+
# -------------
72+
73+
Release

CHANGELOG.md

Lines changed: 26 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,29 @@
11
# Change Log for System Information Unit
22

3+
## v5.24.0 of 03 November 2023
4+
5+
+ Updated TPJOSInfo:
6+
+ Added detection of various Windows 10 and 11 builds and revisions released between 01 July and 02 November 2023:
7+
+ Windows 10 21H2 public & release preview revisions.
8+
+ Windows 10 22H2 public & release preview revisions.
9+
+ Windows 11 21H2 public & release preview revisions.
10+
+ Windows 11 22H2 public, release preview & beta channel revisions.
11+
+ New Windows 11 22H3 public, release preview & beta channel revisions.
12+
+ Windows 11 Dev & Canary channel builds.
13+
+ Windows 11 Future Component Update Beta builds.
14+
+ Removed support for detecting Windows Dev channel builds that expired in September 2023.
15+
+ Updated some comments.
16+
+ Minor fomratting inconsistencies fixed in `CHANGELOG.md`.
17+
318
## v5.23.0 of 01 July 2023
419

520
+ Updated TPJOSInfo to detect various Windows 10 and 11 builds and revisions released in June 2023:
621
+ Windows 10 21H2 public revisions.
722
+ Windows 10 22H2 public & release preview revisions.
823
+ Windows 11 21H2 public revisions.
924
+ Windows 11 22H2 public, release preview, beta channel revisions.
10-
* Windows 11 Future Component Update Beta builds.
25+
+ Added detection and reporting of Windows 11 22H2 "Moment 4".
26+
+ Windows 11 Future Component Update Beta builds.
1127
+ Windows 11 Dev & Canary channel builds.
1228
+ Changed from version string 22H2 to 22H3 for Canary channel builds from build 25375.
1329
+ Fixed TPJOSInfo errors re:
@@ -84,9 +100,9 @@
84100
+ Windows 11 Beta & release preview channel builds in from 2-30 Sepetember 2022.
85101
+ Added build & revision numbers to text reported for Windows 10 Version 22H2 release previews.
86102
+ Add `.gitignore` file.
87-
+ Update documentation:
88-
+ Update `README.md` "Effect of changes to the Windows API" sub-section.
89-
+ Fix errors & update `Acknowledgements .md`.
103+
+ Updated documentation:
104+
+ Updated `README.md` "Effect of changes to the Windows API" sub-section.
105+
+ Fix errors & update `Acknowledgements.md`.
90106

91107
## v5.15.0 of 02 September 2022
92108

@@ -118,11 +134,11 @@
118134
+ Added support for detecting Dev and Beta releases of Windows 11 made during May 2022.
119135
+ Refactored some OS detection code to reduce the amount of code used to test for various versions of OSs that report v10.0.
120136
+ Documentation changes:
121-
+ Replaced `Docs/ReadMe.htm` with markdown formatted `./README.md`. Also expanded, brought up to date with recent changes, and fixed errors.
122-
+ Replaced `Docs/ChangeLog.txt` with markdown formatted `./CHANGELOG.md`. Also removed or struck out references to issues on Google Code.
137+
+ Replaced `/Docs/ReadMe.htm` with markdown formatted `/README.md`. Also expanded, brought up to date with recent changes, and fixed errors.
138+
+ Replaced `/Docs/ChangeLog.txt` with markdown formatted `/CHANGELOG.md`. Also removed or struck out references to issues on Google Code.
123139
+ Restored MPL v2 license file.
124140
+ Updated documentation URL in the documentation shortcut file to a redirection URL on `delphidabbler.com`.
125-
+ Deleted redundant `Docs/Using RtlGetVersion.txt` file.
141+
+ Deleted redundant `/Docs/Using RtlGetVersion.txt` file.
126142
+ Fix some errors and omissions in this change log.
127143
+ Revised `Release.bat`:
128144
+ to take a version number as parameter to use in the release file name
@@ -182,7 +198,7 @@
182198
+ Documentation updates:
183199
+ Fixed bug ~~#39~~ "Change log not updated for sysinfo v5.6" by adding the required release information.
184200
+ Removed acknowledgements from PJSysUtils.pas header comments into a new Docs/Acknowledgements.md document.
185-
+ Added new "Acknowledgements" section to Docs/ReadMe.htm that links to Acknowledgements.md on SourceForge.
201+
+ Added new "Acknowledgements" section to `Docs/ReadMe.htm` that links to Acknowledgements.md on SourceForge.
186202

187203
## v5.6.0 of 12 September 2021
188204

@@ -280,13 +296,13 @@
280296

281297
## v4.0.0 of 20 January 2013
282298

283-
+ PJSysInfo.pas is now compatible with Delphi 32 and 64 bit compilers and will compile with both VCL and FireMonkey 2 frameworks on Windows.
299+
+ `PJSysInfo.pas` is now compatible with Delphi 32 and 64 bit compilers and will compile with both VCL and FireMonkey 2 frameworks on Windows.
284300
+ Added numerous new methods:
285301
+ TPJComputerInfo: "IsAdmin", "IsUACActive", "BiosVendor", "ProcessorIdentifier", "ProcessorName", "SystemManufacturer" & "SystemProductName".
286302
+ TPJSystemFolders: "ProgramFilesX86", "ProgramFilesRedirect", "CommonFilesX86" & "CommonFilesRedirect".
287303
+ TPJOSInfo: "RegisteredOrganisation" & "RegisteredOwner".
288304
+ All previously deprecated code removed, i.e.:
289-
+ TPJSysInfo component and associated glyph file PJSysInfo.dcr.
305+
+ TPJSysInfo component and associated glyph file `PJSysInfo.dcr`.
290306
+ All SIGetXXXX functions.
291307
+ Used unit names are now qualified with namespace name on Delphi XE2 and later.
292308
+ Changed original SysInfoDemo VCL project:

PJSysInfo.pas

Lines changed: 69 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1234,8 +1234,8 @@ TBuildNameMap = record
12341234
https://en.wikipedia.org/wiki/Windows_Server
12351235
https://en.wikipedia.org/wiki/Windows_Server_2019
12361236
https://en.wikipedia.org/wiki/Windows_Server_2016
1237+
https://en.wikipedia.org/wiki/Windows_Server_2022
12371238
https://tinyurl.com/y8tfadm2 (MS Windows Server release information)
1238-
https://tinyurl.com/usupsz4a (Win 11 Version Numbers & Build Versions)
12391239
https://docs.microsoft.com/en-us/lifecycle/products/windows-server-2022
12401240
https://tinyurl.com/yj5e72jt (MS Win 10 release info)
12411241
https://tinyurl.com/kd3weeu7 (MS Server release info)
@@ -1445,6 +1445,7 @@ TBuildNameMap = record
14451445
--------|------------|------------
14461446
21H2 | 2023-10-10 | 2024-10-08
14471447
22H2 | 2024-10-08 | 2025-10-14
1448+
23H2 | 2025-11-11 | 2026-11-10
14481449
}
14491450

14501451
// 1st build released branded as Windows 11
@@ -1461,6 +1462,10 @@ TBuildNameMap = record
14611462
// See **REF1** in implementation
14621463
Win11v22H2Build = 22621;
14631464

1465+
// Windows 11 version 22H3
1466+
// See **REF10** in implementation
1467+
Win11v23H2Build = 22631;
1468+
14641469
// "Preview Builds of October 2022 component update in Beta Channel"
14651470
// See **REF2** in implementation
14661471
Win11Oct22ComponentBetaChannelBuild = 22622;
@@ -1469,7 +1474,7 @@ TBuildNameMap = record
14691474
// See **REF7** in implementation
14701475
Win11Feb23ComponentBetaChannelBuild = 22623;
14711476

1472-
// "Preview builds of future component update in Beta Channel"
1477+
// "Preview builds of May 2023 component update in Beta Channel"
14731478
// See **REF8** in implementation
14741479
Win11May23ComponentBetaChannelBuild = 22624;
14751480

@@ -1479,7 +1484,7 @@ TBuildNameMap = record
14791484

14801485
// Windows 11 Dev channel releases (with version string "Dev", changing to
14811486
// 22H2 at build 22567) [^2].
1482-
Win11DevChannelDevBuilds: array[0..35] of Integer = (
1487+
Win11DevChannelDevBuilds: array[0..11] of Integer = (
14831488
// pre Win 11 release (expired 2021/10/31):
14841489
// 22449, 22454, 22458, 22463,
14851490
// pre Win 11 release (expired 2022/09/15):
@@ -1492,20 +1497,26 @@ TBuildNameMap = record
14921497
// post Win 11 22H2 beta release (expired 2022/09/15):
14931498
// 25115, 25120, 25126, 25131, 25136, 25140, 25145, 25151, 25158, 25163,
14941499
// 25169, 25174, 25179,
1495-
// post Win 11 22H2 beta release (expiring 2023/09/15):
1496-
25182, 25188, 25193, 25197, 25201, 25206, 25211,
1497-
// post Win 11 22H2 release (expiring 2023/09/15):
1498-
25217, 25227, 25231, 25236, 25247, 25252, 25262, 25267, 25272, 25276, 25281,
1499-
25284, 25290, 25295, 25300, 25309, 23403, 23419, 23424, 23430, 23435, 23440,
1500-
23451, 23466, 23471, 23475, 23481, 23486, 23493
1500+
// post Win 11 22H2 beta release (expired 2023/09/15):
1501+
// 25182, 25188, 25193, 25197, 25201, 25206, 25211,
1502+
// post Win 11 22H2 release (expired 2023/09/15):
1503+
// 25217, 25227, 25231, 25236, 25247, 25252, 25262, 25267, 25272, 25276,
1504+
// 25281, 25284, 25290, 25295, 25300, 25309, 23403, 23419, 23424, 23430,
1505+
// 23435, 23440, 23451, 23466, 23471, 23475, 23481, 23486, 23493, 23506,
1506+
// 23511, 23516, 23521,
1507+
// (expiring 2024-09-15)
1508+
23526, 23531, 23536, 23541, 23545, 23550, 23555, 23560, 23565, 23570, 23575,
1509+
23580
15011510
);
15021511

15031512
// Preview builds of Windows 11 in the Canary Channel [^2]
1504-
Win11CanaryPreviewBuilds: array[0..11] of Integer = (
1505-
// With version string "22H2" (expiring 2023/09/15):
1506-
25314, 25324, 25330, 25336, 25346, 25352, 25357, 25370,
1507-
// With version string "22H3" (expiring 2023/09/15):
1508-
25375, 25381, 25387, 25393
1513+
Win11CanaryPreviewBuilds: array[0..8] of Integer = (
1514+
// With version string "22H2" (expired 2023-09-15):
1515+
// 25314, 25324, 25330, 25336, 25346, 25352, 25357, 25370,
1516+
// With version string "22H3" (expired 2023-09-15):
1517+
// 25375, 25381, 25387, 25393, 25905, 25915, 25921, 25926,
1518+
// With version string "22H3" (expires 2024-09-15):
1519+
25931, 25936, 25941, 25947, 25951, 25967, 25977, 25982, 25987
15091520
);
15101521

15111522
// Windows 11 Dev & Beta channel builds with version string "22H2" [^2]
@@ -2174,11 +2185,11 @@ procedure InitPlatformIdEx;
21742185
1620, 1645, 1682, 1706, 1708, 1741, 1766, 1767, 1806, 1826,
21752186
1865, 1889, 1949, 2006, 2075, 2130, 2132, 2193, 2194, 2251,
21762187
2311, 2364, 2486, 2546, 2604, 2673, 2728, 2788, 2846, 2965,
2177-
3086 .. MaxInt:
2188+
3086, 3208, 3324, 3448, 3570 .. MaxInt:
21782189
InternalExtraUpdateInfo := 'Version 21H2';
21792190
1147, 1149, 1151, 1165, 1200, 1202, 1237, 1263, 1266, 1319,
2180-
1320, 1379, 1381, 1499, 1618, 1679, 1737, 1739, 1862, 1947,
2181-
2192, 2545:
2191+
1320, 1379, 1381, 1499, 1618, 1679, 1737, 1739, 1862,
2192+
1947, 2192, 2545:
21822193
InternalExtraUpdateInfo := Format(
21832194
'Version 21H2 [Release Preview Channel v10.0.%d.%d]',
21842195
[InternalBuildNumber, InternalRevisionNumber]
@@ -2197,10 +2208,10 @@ procedure InitPlatformIdEx;
21972208
case InternalBuildNumber of
21982209
2006, 2130, 2132, 2193, 2194, 2251, 2311, 2364, 2486, 2546,
21992210
2604, 2673, 2728, 2788, 2846, 2913, 2965, 3031, 3086,
2200-
3156 {placeholder} .. MaxInt:
2211+
3208, 3271, 3324, 3393, 3448, 3516, 3570, 3636 .. MaxInt:
22012212
InternalExtraUpdateInfo := 'Version 22H2';
22022213
1865, 1889, 1949, 2075, 2301, 2670, 2787, 2908, 3030, 3154,
2203-
3155:
2214+
3155, 3269, 3391, 3513:
22042215
InternalExtraUpdateInfo := Format(
22052216
'Version 22H2 [Release Preview Channel v10.0.%d.%d]',
22062217
[InternalBuildNumber, InternalRevisionNumber]
@@ -2235,7 +2246,8 @@ procedure InitPlatformIdEx;
22352246
194, 258, 282, 348, 376, 434, 438, 469, 493, 527, 556, 593, 613,
22362247
652, 675, 708, 739, 740, 778, 795, 832, 856, 918, 978, 1042,
22372248
1098, 1100, 1165, 1219, 1281, 1335, 1455, 1516, 1574, 1641,
2238-
1696, 1761, 1817, 1880, 1936, 2003, 2057, 2124 .. MaxInt:
2249+
1696, 1761, 1817, 1880, 1936, 2003, 2057, 2124, 2176, 2245,
2250+
2295, 2360, 2416, 2482, 2538 .. MaxInt:
22392251
// Public releases of Windows 11
22402252
InternalExtraUpdateInfo := 'Version 21H2';
22412253
51, 65, 71:
@@ -2255,7 +2267,7 @@ procedure InitPlatformIdEx;
22552267
[InternalBuildNumber, InternalRevisionNumber]
22562268
);
22572269
651, 706, 776, 829, 917, 1041, 1163, 1279, 1515, 1639, 1757,
2258-
1879, 2001, 2121:
2270+
1879, 2001, 2121, 2243, 2359, 2479:
22592271
InternalExtraUpdateInfo := Format(
22602272
'Version 21H2 Release Preview Channel v10.0.%d.%d]',
22612273
[InternalBuildNumber, InternalRevisionNumber]
@@ -2274,13 +2286,14 @@ procedure InitPlatformIdEx;
22742286
case InternalRevisionNumber of
22752287
382, 521, 525, 608, 674, 675, 755, 819, 900, 963, 1105, 1194,
22762288
1265, 1344, 1413, 1485, 1555, 1635, 1702, 1778, 1848, 1926,
2277-
1928, {placeholder->}1973 .. MaxInt:
2289+
1928, 1992, 2070, 2134, 2215, 2283, 2361, 2428, 2506 .. MaxInt:
22782290
begin
22792291
InternalExtraUpdateInfo := 'Version 22H2';
22802292
case InternalRevisionNumber of
22812293
675: AppendMomentToInternalExtraUpdateInfo(1);
22822294
1344: AppendMomentToInternalExtraUpdateInfo(2);
22832295
1778: AppendMomentToInternalExtraUpdateInfo(3);
2296+
2361: AppendMomentToInternalExtraUpdateInfo(4);
22842297
end;
22852298
end;
22862299
1:
@@ -2289,15 +2302,16 @@ procedure InitPlatformIdEx;
22892302
[InternalBuildNumber, InternalRevisionNumber]
22902303
);
22912304
105, 169, 232, 317, 457, 607, 754, 898, 1192, 1343, 1483, 1631,
2292-
1776:
2305+
1776, 2066, 2213, 2359, 2500:
22932306
InternalExtraUpdateInfo := Format(
22942307
'Version 22H2 [Release Preview v10.0.%d.%d]',
22952308
[InternalBuildNumber, InternalRevisionNumber]
22962309
);
22972310
160, 290, 436, 440, 450, 575, 586, 590, 598, 601, 730, 741, 746,
22982311
870, 875, 885, 891, 1020, 1028, 1037, 1095, 1180, 1245, 1250,
22992312
1255, 1325, 1391, 1465, 1470, 1537, 1546, 1616, 1680, 1690,
2300-
1755, 1825, 1830, 1835, 1900, 1906, 1972:
2313+
1755, 1825, 1830, 1835, 1900, 1906, 1972, 2048, 2050, 2115,
2314+
2129, 2191, 2199, 2262, 2265, 2271, 2338:
23012315
InternalExtraUpdateInfo := Format(
23022316
'Version 22H2 [Beta v10.0.%d.%d]',
23032317
[InternalBuildNumber, InternalRevisionNumber]
@@ -2309,6 +2323,36 @@ procedure InitPlatformIdEx;
23092323
);
23102324
end;
23112325
end
2326+
else if IsBuildNumber(Win11v23H2Build) then
2327+
begin
2328+
// **REF10**
2329+
InternalBuildNumber := Win11v23H2Build;
2330+
case InternalRevisionNumber of
2331+
2428, 2506:
2332+
InternalExtraUpdateInfo := 'Version 23H2';
2333+
1825, 1830, 1835, 1900, 1906, 1972:
2334+
// revisions 1825..1972 had version string "22H2"
2335+
InternalExtraUpdateInfo := Format(
2336+
'Version 22H2 [Beta v10.0.%d.%d]',
2337+
[InternalBuildNumber, InternalRevisionNumber]
2338+
);
2339+
2048, 2050, 2115, 2129, 2191, 2199, 2262, 2265, 2271, 2338:
2340+
InternalExtraUpdateInfo := Format(
2341+
'Version 23H2 [Beta v10.0.%d.%d]',
2342+
[InternalBuildNumber, InternalRevisionNumber]
2343+
);
2344+
2361:
2345+
InternalExtraUpdateInfo := Format(
2346+
'Version 23H2 [Release Preview v10.0.%d.%d]',
2347+
[InternalBuildNumber, InternalRevisionNumber]
2348+
);
2349+
else
2350+
InternalExtraUpdateInfo := Format(
2351+
'Version 23H2 [Unknown release v10.0.%d.%d]',
2352+
[InternalBuildNumber, InternalRevisionNumber]
2353+
);
2354+
end;
2355+
end
23122356
else if IsBuildNumber(Win11Oct22ComponentBetaChannelBuild) then
23132357
begin
23142358
// **REF2**
@@ -2404,7 +2448,7 @@ procedure InitPlatformIdEx;
24042448
// **REF9**
24052449
InternalBuildNumber := Win11FutureComponentBetaChannelBuild;
24062450
case InternalRevisionNumber of
2407-
1825, 1830, 1835, 1900, 1906, 1972 .. MaxInt:
2451+
2419, 2483, 2486, 2552, 2700 .. MaxInt:
24082452
InternalExtraUpdateInfo := Format(
24092453
'Future Component Update Beta v10.0.%d.%d',
24102454
[InternalBuildNumber, InternalRevisionNumber]

0 commit comments

Comments
 (0)