Пятница, 29.03.2024, 05:07 Приветствую вас Гость | Группа "Гости" 
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Anton93, Волк-1024, xXxSh@dowxXx  
delphicode » Delphi » Программы на Delphi » Icq Spamer (Проблемма с рассылкой)
Icq Spamer
freezДата: Среда, 23.06.2010, 16:05 | Сообщение # 1
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Пишу Спамер почти все работает , столкнулся с такой проблеммой
Когда запускаю рассылку сообщения отправляются номеров на 10,
а дальше все виснет наглухо, может поможет кто нить. wacko

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, XPMan, StdCtrls, ICQClient, ExtCtrls, Buttons, IdBaseComponent,
IdAntiFreezeBase, IdAntiFreeze;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
Label3: TLabel;
GroupBox1: TGroupBox;
XPManifest1: TXPManifest;
ICQClient1: TICQClient;
Button3: TButton;
Edit5: TEdit;
Label6: TLabel;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
Memo1: TMemo;
Memo2: TMemo;
Memo3: TMemo;
Timer1: TTimer;
Edit3: TEdit;
IdAntiFreeze1: TIdAntiFreeze;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ICQClient1Login(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button3Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
Edit2.Font.Name:='Wingdings';
Edit2.PasswordChar:='l';
Memo1.Lines.Clear;
Memo2.Lines.Clear;
Memo3.Lines.Clear;
Button3.Enabled:=False;
memo2.Enabled:=False;
edit5.Enabled:=False;
timer1.Enabled:=False;
timer1.Interval:=20000; //Интервал секунды
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if Button1.Tag= 0 then
begin
if (Edit1.Text='') or (Edit2.Text='')
or (StrToInt(Edit1.Text)<10000) or (StrToInt (Edit1.Text)>1000000000)
then
begin
MessageBox(0, 'Пожалуйста введите верно UIN и Пароль', 'Невозможно подключиться!', MB_ICONWARNING);
Exit;
end;
ICQClient1.UIN:=StrToInt(Edit1.Text);
ICQClient1.Password:=Edit2.Text; // Логинимся к серверу
ICQClient1.ConvertToPlaintext:=true;
ICQClient1.Login();
Edit1.Enabled:=False;
Edit2.Enabled:=False;
Timer1.Enabled:=True;
Memo1.Lines.Add('Соединение с сервером...');
Button1.Tag:= 1;
Button1.Caption:='Отключиться'; //Меняем название кнопки
end
else
begin
Button1.Tag:= 0;
Button1.Caption:='Подключиься';
ICQClient1.Disconnect;
Edit1.Enabled:=true;
Edit2.Enabled:=true;
Label3.Caption:=('Режим OffLine');
Label3.Font.Color:=clRed;
Memo1.Lines.Add('Соединение с сервером оборвано.');
Button3.Enabled:=False;
memo2.Enabled:=False;
edit5.Enabled:=False;
timer1.Enabled:=False;
end;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ICQClient1.Disconnect;
Edit1.Enabled:=true;
Edit2.Enabled:=true;
Form1.Caption:=('Статус: OffLine');
Label3.Caption:=('Режим OffLine');
Label3.Font.Color:=clRed;
Memo1.Lines.Add('Соединение с сервером оборвано.');

end;

procedure TForm1.ICQClient1Login(Sender: TObject);
begin
Label3.Caption:=('Режим OnLine');
Label3.Font.Color:=clGreen;
if ICQClient1.LoggedIn then
begin
Memo1.Lines.Add('Соединение с сервером установлено.');
Button3.Enabled:=True;
memo2.Enabled:=True;
edit5.Enabled:=True;
Timer1.Enabled:=False;
end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
If not ICQClient1.LoggedIn then
MessageDlg('Соединение с сервером не установлено!',mtInformation,[mbOk],0);
Timer1.Enabled:=False;
Memo1.Lines.Add('Не удалось соединиться с сервером.');
end;
procedure TForm1.Button3Click(Sender: TObject);
var
i:integer;
begin
for i:=strtoint(edit5.Text) to strtoint(edit3.Text)do
begin
icqclient1.SendMessage(i, ''+ memo2.Text +'' ); //отправляем сообщение

Memo1.Lines.Add('Сообщение отправленно');
Memo3.Lines.Add(Memo2.Text);
sleep(500);
end;
end;

end.

 
JawДата: Среда, 23.06.2010, 16:55 | Сообщение # 2
Участник
Зарегистрирован: 09.03.2009
Группа: Пользователи
Сообщений: 70
Статус: Offline
Дальше отправка не идет т.к. макс. возможно отправить ~15 сообщений с одного номера - за короткий промежуток времени, ставь больше слип или отправляй со списка номеров. Так и непонял зачем проверка логина идет по таймеру: событие ICQClient1Login происходит при успешной авторизации.
 
freezДата: Среда, 23.06.2010, 17:17 | Сообщение # 3
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Memo1.Lines.Add('Сообщение отправленно');
Memo3.Lines.Add(Memo2.Text);
sleep(500);

имеешь в виду этот sleep(500); его увеличивал чуть ли не до минуты программа стала работать медленней
результат тот-же, да и вот еще что после 10 отправлений (примерно ) в сеть больше ничего не передается
хотя программа показывает что сообщения отправляются

насчет отправки за короткий промежуток времени это фигя вбиваю один uin и очень быстро тыркаю кнопку отправить
сообщения приходят моментально хоть 15 хоть 115 biggrin

насчет таймера попробовал его уменьшить до 2 секунд

вылетело сообщение невозможно подключиться. ну это в принципе ерунда

Сообщение отредактировал freez - Среда, 23.06.2010, 17:34
 
dolphinДата: Среда, 23.06.2010, 17:35 | Сообщение # 4
Администратор
Сообщений: 906
Статус: Offline
Используй прокси и логоинься сразу номеров с 50 и всё будет ок!

Система: Windows 10 x64, Kali Linux
Среды программирования: Delphi 7, Delphi 10.x

Я не профессионал, я всего лишь любитель
Я не вредитель, я всего лишь теоретик
 
freezДата: Среда, 23.06.2010, 17:43 | Сообщение # 5
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
50 номеров + по 10 сообщений с каждого уина итого 500 . дальще зависнет Да плюс еще прокси найти свежие надо
Не это для меня не вариант. С этим кодом что можно сделать пусть будет медленным но гарантировано отправлять? cool
 
dolphinДата: Среда, 23.06.2010, 17:50 | Сообщение # 6
Администратор
Сообщений: 906
Статус: Offline
Ставь слип после 1о отправленных сообщений минут на 5, и между каждым 3-5 секунд, думаю так будет работать

попробуй ещё с нескольких номеров, это просто

Доступно только для пользователей


Система: Windows 10 x64, Kali Linux
Среды программирования: Delphi 7, Delphi 10.x

Я не профессионал, я всего лишь любитель
Я не вредитель, я всего лишь теоретик
 
freezДата: Среда, 23.06.2010, 17:57 | Сообщение # 7
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Исходник
Прикрепления: spamer.rar (291.6 Kb)
 
freezДата: Среда, 23.06.2010, 18:07 | Сообщение # 8
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Quote (dolphin)
Ставь слип после 1о отправленных сообщений минут на 5, и между каждым 3-5 секунд, думаю так будет работать попробуй ещё с нескольких номеров, это просто

За Delphi берусь только от безысходности (когда надо а взять негде) Короче во всем неразобрался sad
Если можно поправь исходник изначально он был простой аськой я повыкидывал все ненужное cry

Сообщение отредактировал freez - Среда, 23.06.2010, 18:10
 
JawДата: Среда, 23.06.2010, 19:38 | Сообщение # 9
Участник
Зарегистрирован: 09.03.2009
Группа: Пользователи
Сообщений: 70
Статус: Offline
Пробуй так:

Code

unit Unit1;
interface

uses
    Windows, Messages, SysUtils, Variants, Classes,Controls, Forms,
    Dialogs, StdCtrls, ICQClient, ExtCtrls,ICQWorks;

type
    TForm1 = class(TForm)
      ICQClient1: TICQClient;
      Edit1: TEdit;
      Button1: TButton;
      Memo1: TMemo;
      Timer1: TTimer;
      Edit2: TEdit;
      Edit3: TEdit;
      Button2: TButton;
      procedure FormCreate(Sender: TObject);
      procedure Button1Click(Sender: TObject);
      procedure ICQClient1Login(Sender: TObject);
      procedure Timer1Timer(Sender: TObject);
      procedure Button2Click(Sender: TObject);
      procedure ICQClient1LogOff(Sender: TObject);
      procedure ICQClient1Error(Sender: TObject; ErrorType: TErrorType;
        ErrorMsg: String);
    private
      { Private declarations }
    public
      { Public declarations }
    end;

var
Form1: TForm1;
source:TStringList;
tmp,uin,pass:string;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
source:=TStringList.Create;
source.LoadFromFile('s.txt');
//в файл s.txt ложим уины с паролями такого вида:
//uin1;pass
//uin2;pass
//uin3;pass
//и т.д.
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
timer1.Enabled:=true;
end;

procedure TForm1.ICQClient1Login(Sender: TObject);
var
a:integer;
begin
source.Delete(0);
Memo1.Lines.Add(uin+' в сети');
for a:=0 to strtoint(edit2.text) do
begin
icqclient1.SendMessage(StrToInt(edit1.text), edit3.text);
end;
ICQClient1.LogOff;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
i:integer;
begin
if source.Count>0 then
begin
tmp:=source.Strings[0];
uin:=copy(tmp,1,pos(';',tmp)-1);
pass:=copy(tmp,pos(';',tmp)+1,length(tmp));
ICQClient1.Password:=pass;
ICQClient1.UIN:=StrToInt(uin);
ICQClient1.Login;
end
else
source.LoadFromFile('s.txt');
//Memo1.Lines.Add(uin+'Соединение с сервером оборвано.');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
timer1.Enabled:=false;
end;

procedure TForm1.ICQClient1LogOff(Sender: TObject);
begin
Memo1.Lines.Add(uin+' Не в сети');
end;

procedure TForm1.ICQClient1Error(Sender: TObject; ErrorType: TErrorType; ErrorMsg: String);
begin
Memo1.Lines.Add(uin+' Ошибка при подключении ');
source.Delete(0);
end;

end.

P.S: Перенесите тему в нужный раздел)

Сообщение отредактировал Jaw - Среда, 23.06.2010, 19:40
 
freezДата: Среда, 23.06.2010, 20:02 | Сообщение # 10
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Hе компилиться может исходник cкинеш
 
JawДата: Среда, 23.06.2010, 21:46 | Сообщение # 11
Участник
Зарегистрирован: 09.03.2009
Группа: Пользователи
Сообщений: 70
Статус: Offline
Пробуй: http://multi-up.com/294353
 
freezДата: Четверг, 24.06.2010, 14:16 | Сообщение # 12
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Сообщения не приходят, непойму в чем дело отправка вроде идет в логе подключение отключение пишет. а сообщений нет
 
freezДата: Четверг, 24.06.2010, 21:00 | Сообщение # 13
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Как здесь сделать бесконечный цикл ну или с условием что j:=0 тогда стоп

procedure TForm1.Button3Click(Sender: TObject);

var
j:integer;
z:integer;

begin

j := strtoint(edit5.Text);
z:= j-1;
begin

icqclient1.SendMessage((j), ''+ memo2.Text +'' ); //отправляем сообщение
edit5.Text:=inttostr(z);

Memo1.Lines.Add('Сообщение отправленно');
Memo3.Lines.Add(Memo2.Text);
sleep(200);

end;

end;

попробовал через goto

procedure TForm1.Button3Click(Sender: TObject);
label

m2;

var
j:integer;
z:integer;

begin
m2:
j := strtoint(edit5.Text);
z:= j-1;
begin

icqclient1.SendMessage((j), ''+ memo2.Text +'' ); //отправляем сообщение
edit5.Text:=inttostr(z);

Memo1.Lines.Add('Сообщение отправленно');
Memo3.Lines.Add(Memo2.Text);
sleep(200);
goto m2;
end;

end;

цикл конечно получился только вот в edit5
ничего не изменилось . sad

 
JawДата: Четверг, 24.06.2010, 22:18 | Сообщение # 14
Участник
Зарегистрирован: 09.03.2009
Группа: Пользователи
Сообщений: 70
Статус: Offline
Quote
Сообщения не приходят, непойму в чем дело отправка вроде идет в логе подключение отключение пишет. а сообщений нет

какой у тебя клиент? Если icq7 или 6.5 то туда обычно недоходит(даже незнаю почему, ф-ции антиспама там вроде нет), если qip то отключи антиспам\флад защиту.

В цикле тебе нужно отправлять сообщения от номера скажем к примеру в едите вписываеш номер: 123456 сообщения приходят на 123456, 123455, 123454, 123453 и так далее вниз?

var
i:integer;
begin
for i:=strtoint(edit5.Text) DownTo 1 do
icqclient1.SendMessage(i, memo2.Text);
end;

Как то так получается.

 
freezДата: Пятница, 25.06.2010, 18:32 | Сообщение # 15
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Quote (Jaw)
В цикле тебе нужно отправлять сообщения от номера скажем к примеру в едите вписываеш номер: 123456 сообщения приходят на 123456, 123455, 123454, 123453 и так далее вниз?

да так как z:= j-1;

А как button3 на таймер повесить, ну чтоб через определенное время сама нажималась?

нашел такой код на сайте http://www.delphimaster.ru/articles/components_gauge.html
установил компонент . добавил в программу а она сама нифига не нажимается
angry angry angry

unit CountBtn;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;

type
TCountBtn = class(TButton)
private
{ Private declarations }
FCount: integer;
protected
{ Protected declarations }
procedure Click;override;
public
{ Public declarations }
procedure ShowCount;
published
{ Published declarations }
property Count:integer read FCount write FCount;
constructor Create(aowner:Tcomponent); override;
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents('Mihan Components', [TCountBtn]);
end;

constructor TCountBtn.Create(aowner:Tcomponent);
begin
inherited create(Aowner);
end;

procedure Tcountbtn.Click;
begin
inherited click;
FCount:=FCount+1;
end;

procedure TCountBtn.ShowCount;
begin
Showmessage('По кнопке '+ caption+' вы сделали: '+inttostr(FCount)+' клик(а/ов)');
end;

end.

Сообщение отредактировал freez - Пятница, 25.06.2010, 20:49
 
JawДата: Суббота, 26.06.2010, 14:02 | Сообщение # 16
Участник
Зарегистрирован: 09.03.2009
Группа: Пользователи
Сообщений: 70
Статус: Offline
Quote
нашел такой код на сайте http://www.delphimaster.ru/articles/components_gauge.html
установил компонент . добавил в программу а она сама нифига не нажимается

Судя по твоим постам, тебе это еще рано изучать.

Quote
А как button3 на таймер повесить, ну чтоб через определенное время сама нажималась?

Button1.click;

Так лучше не делать, код кнопки запихни в процедуру и по таймеру вызывай эту самую процедуру.

 
freezДата: Суббота, 26.06.2010, 19:07 | Сообщение # 17
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Огромное спасибо Jaw За помощь в том что нужно было сделать
Выкладываю исходник того что получилось все работает
Прикрепления: ICQ_Spamer.rar (16.5 Kb)
 
freezДата: Четверг, 15.07.2010, 16:54 | Сообщение # 18
Частый гость
Зарегистрирован: 09.01.2010
Группа: Пользователи
Сообщений: 30
Статус: Offline
Еще вопрос, мне нужно узнать информацию об уине

Скажите правильно ли я делаю код компилируется а вот в label8 и label9 ничего не отображается

Code
procedure TForm1.Button2Click(Sender: TObject);

begin
icqclient1.RequestInfo(strtoint(edit5.Text));
end;
procedure tform1.icqclient1usergeneralinfo(Sender: TObject; UIN,
   NickName, FirstName, LastName, Email, City, State, Phone, Fax, Street,
   Cellular, Zip, Country: String; TimeZone: Byte; PublishEmail: Boolean);
begin
label8.Caption:= nickname;
label9.Caption:= email;
  end;
end.

sad

 
delphicode » Delphi » Программы на Delphi » Icq Spamer (Проблемма с рассылкой)
  • Страница 1 из 1
  • 1
Поиск:

delphicode.ru © 2008 - 2024 Хостинг от uCoz