Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2013, 01:10   #11
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Они разделены байтом 0x0a, т.е. #10. Попробуйте мой код выше, только замените #13 на #10.
Кстати, Вы не замазали HEX представление, но замазали текст, а это одно и то же. Лучше удалите скриншот
Перевод строки в разных системах - в UNIX как раз 0x0a, а в Windows - 0x0d 0x0a.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 21.10.2013 в 01:15.
BDA вне форума Ответить с цитированием
Старый 21.10.2013, 01:35   #12
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
Лучше удалите скриншот
поздно пить боржоми
eval вне форума Ответить с цитированием
Старый 21.10.2013, 22:51   #13
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

ДА спасибо большое вроде помогло)
Dozent вне форума Ответить с цитированием
Старый 21.10.2013, 23:29   #14
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

хм, тут при обратке выходит ошибка 'Invalid argument' на присвоение

Код:
const
  // Массив параметров
  sUserInfoParam: array [0 .. 8] of string = ('id', 'tariff_id', 'email',
    'phone', 'balance', 'date', 'senders', 'default_sender', 'any_sender');
...


function TfrmSenderSms.GetInfoUser(sAPI: string): variant;
var
  s, str: string;
  k, p, i: integer;
begin
  s := 'http://www.smspilot.ru/api.php?';
  s := s + 'apikey=' + Sender.URL.ParamsEncode(sAPI); // IpKey
  // s := s + '&charset=windows-1251'; //Ероглифи если не убрать

  // ed_request.Text := s;
  s := Sender.Get(s);
  // Обрабатываем параметры
  for i := 0 to 8 do
  begin

    k := pos(sUserInfoParam[i], s);
    if k = 0 then
      exit;
    inc(k, length(sUserInfoParam[i]));
    p := PosEx(#10, s, k);
    if p = 0 then
      p := length(s) + 1;
    str := copy(s, k + 1, p - k - 1);
    Result[i] := str;//ОШИБКА!!!!!!!!!1
  end;
end;
Хотя, трасировкой проверял, сначало там оставался символ конца строки, но шас остаётся чисто строка '7566' что не так?
Dozent вне форума Ответить с цитированием
Старый 22.10.2013, 00:07   #15
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

Код:
  Result := VarArrayCreate([0, 8], varVariant);
  for i := 0 to 8 do
  begin
    k := pos(sUserInfoParam[i], s);
    if k = 0 then
      exit;
    inc(k, length(sUserInfoParam[i]));
    p := PosEx(#10, s, k);
    if p = 0 then
      p := length(s) + 1;
    str := copy(s, k + 1, p - k - 1);

    Result[i] := str;
  end;
Забыл создать массив)
Dozent вне форума Ответить с цитированием
Старый 22.10.2013, 00:14   #16
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Осторожнее с if k = 0 then exit;. Эта команда выведет из процедуры досрочно, если не найдет строку.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 22.10.2013, 00:18   #17
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

да) спасибо)
Код:
  Result := VarArrayCreate([0, 8], varVariant);
  for i := 0 to 8 do
  begin
    k := pos(sUserInfoParam[i], s);
    if k = 0 then
    begin
      Result := null;
      exit
    end;
    inc(k, length(sUserInfoParam[i]));
    p := PosEx(#10, s, k);
    if p = 0 then
      p := length(s) + 1;
    str := copy(s, k + 1, p - k - 1);
    Result[i] := str;
  end;
Dozent вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как качать через 2 шлюза на WindowsXP calypso Windows 0 27.03.2013 13:35
Обработка ответа от сервера Musho C# (си шарп) 1 13.10.2011 09:09
Интервал ответа Pavelok Работа с сетью в Delphi 3 16.05.2009 22:08
Сисадминам.Прокси сервер. Защита шлюза в инет Zerone Свободное общение 12 27.01.2009 08:17
обработка вариантов ответа из матрицы Alar Общие вопросы Delphi 0 29.10.2006 11:06