Файл становится известен, когда нужно получить ответ? Ну так и делать. В момент, когда нужно получить ответ, построчно прочитать файл, узнать кол-во разделителей и заодно их позиции, получить рандом, и построчно считать с позиции нужного разделителя до следующего. Вообщем на месте этого кода:
Код:
N:= -1;
S:= TStringList.Create;
S.LoadFromFile(extractfilepath(paramstr(0))+'файл.txt');
listS:=TStringList.Create;
for i:=0 to S.Count-1 do
if(S.Strings[i] = '#') then
begin
inc(N);
listS.Add(inttostr(I));
end;
k:=random(N);
for i:=(strToint(listSpam.Strings[k])+1) to (strToint(listSpam.Strings[k+1])-1) do
result:=result+spamS.Strings[i]+#13#10;