Die null ist nunmal der Trenner von den netten WindowsArrays (kennt man z.B. vom OpenDialog (
WinAPI), nur das da intern in TOpenialog ein "|" verwendet wird, da die viele Stringoperationen mit der #0 nicht klarkommen)
Delphi-Quellcode:
// Result = string/array-length exclusive terminating #0#0
Function StrLen0Array(P: PChar): Integer;
Var i: Integer;
Begin
Result := 0;
If P =
nil Then Exit;
Repeat
i := StrLen(P);
Inc(Result, i + 1);
Inc(P, i + 1);
Until i = 0;
Dec(Result, 2);
End;
ach ja, es darf nur ein Array übergeben werden, welches mit #0#0 endet ... sonst kommt es schnell mal zu 'ner
Exception (Zugriffsverletzung)