Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.04.2010, 18:00
Cracer Cracer вне форума
Прохожий
 
Регистрация: 28.12.2008
Сообщения: 33
Репутация: 10
Печаль Ошибка в коде..

Доброго времени суток уважаемые
Пишу ICQ бота... Вообщем кусок кода:

Код:
var
icq: cardinal;
i: integer;
Find:string; // Искомая строка
posit : Integer;
S: String;
KeyCode: integer;
begin
KeyCode:= 0;
Key := Copy(Msg,0,7);
Nick := Copy(Msg,9,35);
find:=Key; 
ts := find;
Memo1.Lines.LoadFromFile('keys.txt');
begin
for i := 0 to Memo1.Lines.Count-1 do
if Memo1.Lines.Strings[i] = find then
KeyCode:= 1;
end;
if KeyCode = 1 then
begin
Memo1.Lines.Delete(i);
Memo1.Lines.SaveToFile('keys.txt');
Memo1.Lines.Clear;
KeyCode:= 0;

Полученное сообщение разбивается на 2 слова, ключ и имя, в мемо грузится файл c ключами (1 ключ на строку), если полученный ключ совпадает со строкой из мемо (т.е. из keys.txt) строка с ключом поидее должна удаляться.... Но этого не происходит Помогите найти в чем косяк пожалуйста

Последний раз редактировалось Cracer, 27.04.2010 в 19:48.
  #2  
Старый 27.04.2010, 19:24
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

Цитата:
Сообщение от Cracer
Пишу ICQ бота...
Чтобы потом разсылать спам?
Цитата:
Сообщение от Cracer
Полученное сообщение разбивается на 2 слова, ключ и имя, в мемо грузится файл, если полученный ключ совпадает со строкой из мемо (т.е. из keys.txt) строка с ключом поидее должна удаляться....
Как разделены пасс и ник в файле? Через пробел?

П.с.: а вобщем это все можно гораздо лучше реализовать.
Зачем каждый раз грузить с файла в файл?
Зачем сравнивать именно в мемо?
Зачем соединять пароль и ник в одном файле?
И т.д.

Последний раз редактировалось Konrad, 27.04.2010 в 19:30.
  #3  
Старый 27.04.2010, 19:36
Cracer Cracer вне форума
Прохожий
 
Регистрация: 28.12.2008
Сообщения: 33
Репутация: 10
По умолчанию

В поставленной задаче есть хоть намек на рассылку спама? Совершенно не для этих целей. Для рассылки спама мне просто необходимо принимать входящие сообщения?
В файле нет пасса и кода, а лишь одни пассы-ключи, по 1 ключу в строку.
Вы меня спрашиваете зачем? Я сам знаю что можно проще, но особой нужды в простоте нет, собственно как и идей (знаний) как это сделать проще.
Пароль и ник в файле не соединяются вообще.

Меня конкретно интересует как в данном примере удалить найденную строку.

Последний раз редактировалось Cracer, 27.04.2010 в 19:56.
  #4  
Старый 27.04.2010, 19:58
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

Код:
if Memo1.Lines.Strings[i] = find then
Проверь выполняется ли условие. Скорей всего нет.
  #5  
Старый 27.04.2010, 20:05
Cracer Cracer вне форума
Прохожий
 
Регистрация: 28.12.2008
Сообщения: 33
Репутация: 10
По умолчанию

перезадал переменную... заработало. Спасибо, проблема решена.
Закрытая тема


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:52.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter