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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.01.2013, 15:06   #1
stasa9711
Форумчанин
 
Регистрация: 01.10.2012
Сообщений: 106
Вопрос

всем привет ) этот вопрос связан с предыдушим с которым мне помогли справиться добрые спецы этого форума ) и так перейду к делу .... сначала я с сайта в мемо копирую содержимое (прокси) делаю так
Код:
smemo7.Lines.Text:=StringReplace(idhttp1.Get('http://odno-like.tk/pr.txt'),'?',#13#10,[rfReplaceAll]);
после чего мне нужно скопировать с мемо ип и порт ( главное надо всем так прокси делать ) делаю так
Код:
-----------
var
 IP,Port:string;
 CurAcc : integer;
begin
IP:= Copy(Proxy[CurAcc],1,Pos(':',Proxy[CurAcc])-1); //Копируем прокси
Port:= Copy(Proxy[CurAcc],Pos(':',Proxy[CurAcc])+1,Length(Proxy[CurAcc])); //Копируем порт

   slabel38.Caption := ip;
   slabel58.Caption := Port;

end;
а в форм креате следующий код
Код:
Proxy:=Tstringlist.create;
 Proxy := TStringList(sMemo7.Lines);
но в лабелы ничего не записывается .... почему ? помогите пож уже несколько дней мучаюсь ......

на другом форуме мне подсказали что в форм креате надо написать так :
Код:
Proxy.AddStrings(sMemo7.Lines);
но так дает вот такую ошибку

Последний раз редактировалось Stilet; 03.01.2013 в 21:34.
stasa9711 вне форума Ответить с цитированием
Старый 03.01.2013, 15:24   #2
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

Код:
IP:= Copy(Proxy.Strings[CurAcc],1,Pos(':',Proxy.Strings[CurAcc])-1); //Копируем прокси
Port:= Copy(Proxy.Strings[CurAcc],Pos(':',Proxy.Strings[CurAcc])+1,Length(Proxy.Strings[CurAcc])); //Копируем порт
Копирование с мемо:
либо как Вам подсказали на другом форуме, либо
Код:
  Proxy.Text := sMemo7.Lines.Text;

Последний раз редактировалось Stilet; 03.01.2013 в 21:36.
Lardes вне форума Ответить с цитированием
Старый 03.01.2013, 15:28   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

В CurAcc должен быть помещен индекс строки стринглиста с которой берете данные. По-моему уже раза четыре об этом говорили вам
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 03.01.2013, 16:36   #4
stasa9711
Форумчанин
 
Регистрация: 01.10.2012
Сообщений: 106
По умолчанию

Lardes , спасибо но не помогло .... если использовать все вместе
Код:
 Proxy.Text := sMemo7.Lines.Text; + 
IP:= Copy(Proxy.Strings[CurAcc],1,Pos(':',Proxy.Strings[CurAcc])-1); //Копируем прокси
Port:=Copy(Proxy.Strings[CurAcc],Pos(':',Proxy.Strings[CurAcc])+1,Length(Proxy.Strings[CurAcc])); //Копируем порт
то дает ту же ошибку ... а по одиночке ничего не записывает в мемо .....

Аватар, как мне туда записать индекс строки ? я же написал переменную CurAcc при копировании так она и должна записывать
Код:
IP:= Copy(Proxy[CurAcc],1,Pos(':',Proxy[CurAcc])-1);
stasa9711 вне форума Ответить с цитированием
Старый 03.01.2013, 17:30   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Доступ к значению свойства Proxy.Strings осуществляется по индексу, как к массиву символьных строк. К-во этих строк можно узнать в Proxy.Count. Поскольку нумерация индекса начинается с 0, то возможные значения CurAcc лежат в интервале от 0 до Proxy.Count-1. Вы обращаетесь к элементу Proxy.Strings не инициализировав CurAcc и там лежит фиг знает какое значение, вот и вылетает прога. А какое там должно быть значение вам видней, мне откуда знать какую строку вы собираетесь парсить?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 03.01.2013, 18:08   #6
stasa9711
Форумчанин
 
Регистрация: 01.10.2012
Сообщений: 106
По умолчанию

да мне все строки нужно спарсить .... повторяю я делаю чекер однокл , и для него нужны прокси ........
stasa9711 вне форума Ответить с цитированием
Старый 03.01.2013, 18:29   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Тогда в цикле CurAcc от 0 до Proxy.Count-1
И slabel38 и slabel58 не при делах
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 03.01.2013, 19:14   #8
stasa9711
Форумчанин
 
Регистрация: 01.10.2012
Сообщений: 106
По умолчанию

я знаю что лабелы не в приделах ....просто я так провожу проверку копирует она или нет ........ так сделать цикл :
Код:
for CurAcc :=0  to proxy.Count -1  do begin 
и тут дальше идет копирование
если что прошу поправить .....

сделал так :
Код:
var
 IP,Port:string;
 CurAcc : integer;
begin
 for CurAcc :=0  to Proxy.Count -1  do begin

IP:= Copy(Proxy[CurAcc],1,Pos(':',Proxy[CurAcc])-1); //Копируем прокси
Port:= Copy(Proxy[CurAcc],Pos(':',Proxy[CurAcc])+1,Length(Proxy[CurAcc])); //Копируем порт

   slabel38.Caption := ip;
   slabel58.Caption := Port;

при этом если в форм креате стоит 

Proxy.Text := sMemo7.Lines.Text; то лабелы не изменяются так и стоят , а если в форм креате стоит 
 Proxy := TStringList(sMemo7.Lines); то лабелы становятся пустыми .... но так или так все равно не копируются

Последний раз редактировалось Stilet; 03.01.2013 в 21:40.
stasa9711 вне форума Ответить с цитированием
Старый 03.01.2013, 19:33   #9
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

Цитата:
Сообщение от stasa9711 Посмотреть сообщение
.... если использовать все вместе
Код:
 Proxy.Text := sMemo7.Lines.Text; + 
IP:= Copy(Proxy.Strings[CurAcc],1,Pos(':',Proxy.Strings[CurAcc])-1); //Копируем прокси
Port:=Copy(Proxy.Strings[CurAcc],Pos(':',Proxy.Strings[CurAcc])+1,Length(Proxy.Strings[CurAcc])); //Копируем порт
то дает ту же ошибку ... а по одиночке ничего не записывает в мемо .....
Что использовать? все вместе? Для чего? по одиночке? Зачем? О чем Вы вообще?

Цитата:
Сообщение от stasa9711 Посмотреть сообщение
Proxy.Text := sMemo7.Lines.Text; то лабелы не изменяются так и стоят , а если в форм креате стоит Proxy := TStringList(sMemo7.Lines); то лабелы становятся пустыми .... но так или так все равно не копируются
Для чего Вы это написали и чего ждете?
Lardes вне форума Ответить с цитированием
Старый 03.01.2013, 19:39   #10
stasa9711
Форумчанин
 
Регистрация: 01.10.2012
Сообщений: 106
По умолчанию

я жду что в лабелы скопируются прокси из мемо7
stasa9711 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
копирование из memo corsar1991 Общие вопросы Delphi 2 15.11.2012 15:41
Копирование текста из Memo bulkin2000 Компоненты Delphi 3 30.04.2012 14:03
копирование 10значных цифр из memo igabenu Общие вопросы Delphi 2 07.02.2011 16:57
поиск и копирование в memo igabenu Общие вопросы Delphi 1 10.01.2011 23:33
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo Artem Компоненты Delphi 3 07.09.2007 13:40