Насколько я понимаю URLEncode() в GetUrlScript.txt использовать нельзя? Как можно реализовать?
Пробовал копипастить разные интернет-варианты в GetUrlScript.txt, но ни один у меня так и не заработал - все выдавали ошибку компиляции (сразу оговорюсь - с паскалем/делфи вообще не знаком ). 
К примеру:
Этот говорит, что Unknown identifier 'CharIsInSet':
- Код: Выделить всё
 function URLEncode(const ASrc: string): string;
var
   UnsafeChars: string;
   i: Integer;
begin
   Result := '';
   UnsafeChars := '*#%<> []';
   for i := 1 to Length(ASrc) do begin
      if CharIsInSet(ASrc, i, UnsafeChars) or (not CharIsInSet(ASrc, i, CharRange(#33,#128))) then begin
         Result := Result + '%' + IntToHex(Ord(ASrc[i]), 2);
      end else begin
         Result := Result + ASrc[i];
      end;
   end;
end;
Этому нужна ';'  где-то в if:
- Код: Выделить всё
 function URLEncode(s: string): string;
var
   i: integer;
   source: PChar;
begin
   result := '';
   source := PChar(s);
   for i := 1 to length(source) do begin
      if not ( source[i - 1] in ['A'..'Z', 'a'..'z', '0'..'9', '-', '_', '~', '.', ':', ''] ) then begin
         result := result + '%' + inttohex(ord(source[i - 1]), 2);
      end else begin
         result := result + source[i - 1];
      end;
   end;
end;
В чем может быть проблема?
И в догонку еще один вопрос: можно ли в GetUrlScript.txt получить статус http-запроса тайла указанного в ResultURL? Можно конечно использовать Downloader(), но в этом случае к одному и тому же тайлу будет создаваться 
два одинаковых запроса - один чтобы получить response_code, второй уже на скачивание. И это не очень хорошо, имхо.
Тут сам разобрался - if GetHeaderValue(ResponseHead, 'Status') = '404 Not Found' then ... вроде бы должно решить ситуацию. Поправьте, если не прав. Проверить пока не могу ибо не ясен основной вопрос.
Заранее благодарен за помощь.