Hi,
ich habe gerade das ganze mal versucht.
Erstmal meine Funktion:
Delphi-Quellcode:
function GetParam(index: integer; lineStr: string): string;
var
Params: array[0..5] of string;
counter: integer;
paramCounter: integer;
temp: string;
oldEnd: integer;
openString: boolean;
i: integer;
begin
counter := 0;
paramCounter := -1;
oldEnd := 1;
repeat
inc(counter);
if lineStr[counter] = '"' then begin
openString := true;
i := counter;
while openString do begin
inc(i);
if lineStr[i] = '"' then
openString := false;
end;
temp := copy(lineStr, counter, counter + 1 - i);
inc(paramCounter);
Params[paramCounter] := temp;
oldEnd := i;
counter := i;
end;
if lineStr[counter] = ' ' then begin
temp := copy(lineStr, oldEnd, counter - oldEnd);
inc(paramCounter);
Params[paramCounter] := temp;
oldEnd := counter;
end;
until counter = length(lineStr);
end;
Bei lineStr =
Code:
findwindow "test" "test test" $1
wird so ist Paramcount so:
Code:
0: findwindow
1:
2: "
3:
4: "
5:
Das erste ist ja richtig...
Woran kann das liegen? Wo liegt der Hund begraben?
Chris