Wenn ich grundsätzlich in ProgramData und Unterverzeichnisse reinseh,
dann
haben "Benutzer" nur Leserechte und "Administratoren" auch noch Schreibrechte. ("Gäste" dürfen garnichts)
"Ersteller" des Unterverzeichnisses und dessen Dateien haben zusätzlich noch "spezielle Berechtigungen".
(sie hätten z.B. das Recht die Rechte dafür ändern zu dürfen und "Benutzern" das Speichern zu erlauben)
Fazit: Als "Benutzer" darfst du dort garnicht reinschreiben und das nicht erst seit Windows 11 (auch schon 7 und 10 ...
WinNT).
Eventuell auch nicht als Admin, falls das Programm nicht Elevated ist, also durch
UAC eingeschränkt, weil das Programm keine höheren Rechte angefordert hat ... könnte sein, dass mit Windows 11 dieser Teil nun "richtig" behandelt wird.
Du könntest also dein Programm mit passenden Rechten laufen lassen
(nofalls auch nur kurzzeitig einen Thread oder SubProzess mit höheren Rechten, während des Schreibens),
oder die Rechte für dein Verzeichnis anpassen
oder du nimmst dir ein anderes Verzeichnis.
Mit einem
Win32-Programm ohne Manifest, mit passendem SupportedOS-Eintrag (halbwegs aktuelle Delphis haben nun sowas drin), würde das Speichern in den VirtalStore umgeleitet.