Delphi-Quellcode:
record
S: String[5]; // oder Array of Char/AnsiChar/WideChar
W: Word;
procedure Setter(Value: Boolean); // if Value then W := W or (1 shl Index) else ...
function Getter: Boolean; // Result := W and (1 shl Index) <> 0;
property W1: Boolean index 0 read Getter write Setter;
property W2: Boolean index 1 read Getter write Setter;
property W3: Boolean index 2 read Getter write Setter;
...
end;
Aber vorher sollten sowieso die Speicherlecks behoben werden, bevor man veruscht die läppischen 2 MB auf 280 KB, bzw. 320 KB mit ShortString oder 480 KB mit WideChar zu schrumpfen.