Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
[Delphi] памогите с функцией |

07.04.2010, 23:56
|
|
Познающий
Регистрация: 11.11.2008
Сообщений: 72
Провел на форуме: 763861
Репутация:
0
|
|
[Delphi] памогите с функцией
Вот функция:
PHP код:
function TForm1.Parsing(text:String): string;
var
i:integer;
Sk: TStringList;
NewMsg,name:string;
New:TStringList;
begin
sk:= TStringList.Create;
sk.Text:=text;
For I := 0 To sk.Count -1 do
begin
If Pos('id="homelink"', sk[I]) <> 0 Then
begin
id := sk[I];
id := Copy(id, Pos('href="', id), Length(id));
Delete(id, Pos('">', id),Length(id));
id := Copy(id, Pos('id', id), Length(id));
Delete(id, 1,2);
end;
end;
For I := 0 To sk.Count -1 do
begin
If Pos('<div class="shah">', sk[I]) <> 0 Then
begin
name := sk[I];
name := Copy(name, Pos('">', name), Length(name));
delete(name,Pos('<', name), Length(name));
delete(name, 1, 2);
end;
end;
For I := 0 To sk.Count -1 do
begin
If Pos('<a href="/mail.php?id=', sk[I]) <> 0 Then
begin
mesage := sk[I];
mesage := Copy(mesage, Pos('<a href="/mail.php?id=', mesage), 100);
if Pos('</b>', mesage) <>0 then
begin
delete(mesage, Pos('</b>', mesage),Length(mesage));
delete(mesage, Pos('<a href=', mesage),pos('(<b>',mesage));
delete(mesage, 1,3);
end
else
mesage:='нет';
end;
end;
if strtoint(id) <>0 then
begin
label3.Caption:='У вас '+mesage+' новых сообщений.';
Label1.Caption:='Здраствуйте '+name;
Label2.Caption:='Ваш ИД: '+id;
NewMsg:=name+', у вас '+mesage+' новых сообщений';
memo1.lines.add(NewMsg);
end
else
begin
NewMsg:='Вы не авторизованы!';
memo1.lines.add(NewMsg);
new.Free;
sk.Free;
end;
Она выдаёт ошибку когда её вызываеш опять другой кнопкой
Код HTML:
projekt raised exception class EAccess Violation with message:" Access violation at address 00000020.Read of address 00000020",Progres stopped ...
И ещё вапрос,как сделать чтоб приложение ело меньше опиротивы??
|
|
|

07.04.2010, 23:59
|
|
Познающий
Регистрация: 02.01.2009
Сообщений: 90
Провел на форуме: 390073
Репутация:
44
|
|
Сообщение от cel
И ещё вапрос,как сделать чтоб приложение ело меньше опиротивы??
Ну по конкретному приложению помочь немогу... а вообще - поменьше использовать "повторялки" одного и того-же кода...
|
|
|

08.04.2010, 00:01
|
|
Познающий
Регистрация: 11.11.2008
Сообщений: 72
Провел на форуме: 763861
Репутация:
0
|
|
У меня нет "повторялок" кода)
|
|
|

08.04.2010, 00:02
|
|
Участник форума
Регистрация: 02.02.2010
Сообщений: 107
Провел на форуме: 612028
Репутация:
28
|
|
не инициализирована new
добавь строчку new := TStringList.Create;
Код:
function TForm1.Parsing(text:String): string;
var
...
begin
new := TStringList.Create;
sk:= TStringList.Create;
sk.Text:=text;
...
end;
Последний раз редактировалось [stranger]; 08.04.2010 в 00:06..
Причина: добавил код
|
|
|

08.04.2010, 00:12
|
|
Познающий
Регистрация: 11.11.2008
Сообщений: 72
Провел на форуме: 763861
Репутация:
0
|
|
добавил всеравно этоже ошибка
|
|
|

08.04.2010, 09:48
|
|
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
Провел на форуме: 188563
Репутация:
52
|
|
1. Код можно было уменьшить в 2, а то и в 3 раза. Как сказал DeepBlue7, повтор есть.
На пример: Цикл, зачем 3 раза, если можно 1 раз, всеравно нет глобально зависящих переменных.
2. Насчет ошибки, при повторном запуске он пробует считать данных которых нет. Следовательно F8 и смотри, где убиваются они.
|
|
|

08.04.2010, 18:12
|
|
Познающий
Регистрация: 11.11.2008
Сообщений: 72
Провел на форуме: 763861
Репутация:
0
|
|
непамогло(((
|
|
|

08.04.2010, 18:22
|
|
Участник форума
Регистрация: 20.02.2010
Сообщений: 121
Провел на форуме: 496930
Репутация:
60
|
|
free юзай не будет столько жрать
|
|
|

08.04.2010, 18:39
|
|
Познающий
Регистрация: 11.11.2008
Сообщений: 72
Провел на форуме: 763861
Репутация:
0
|
|
юзаю
|
|
|

08.04.2010, 18:40
|
|
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме: 1747641
Репутация:
175
|
|
На выполнении какой строки ошибка происходит?
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
[Delphi] Indy10.5.5 Авторизация ВК
|
cel |
С/С++, C#, Delphi, .NET, Asm |
5 |
18.02.2010 13:12 |
|
Нужен ФлешПлеер с функцией стриминга
|
spamerr |
PHP, PERL, MySQL, JavaScript |
0 |
31.12.2009 01:55 |
|
[Delphi] Генератор мусора
|
ex3me |
С/С++, C#, Delphi, .NET, Asm |
9 |
01.08.2009 23:52 |
|
В Сингапуре изобретен мобильный телефон с функцией ключей от машины
|
novichok |
Новости мира "железа" |
0 |
05.02.2006 16:33 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|