ЗДРСТВТ В общем так , вот код
| Код | //###################################################### // Г о л о в а п р о г р а м м ы //###################################################### program Loca; uses windows,winsock2,sysutils; var info: TWSADATA; FSocket: TSocket; SockAddr: TSockAddr; Nick,User: ShortString; i : integer;
//###################################################### // Ф У Н К Ц И И //###################################################### // **** Преобразовывем IP **** function d_addr(IPaddr : string) : Cardinal; var pa: PChar; sa: TInAddr; Host: PHostEnt; begin Result:=inet_addr(PChar(IPaddr)); // Перевод если адреа не в ip4 if Result=INADDR_NONE then begin host:=GetHostByName(PChar(IPaddr)); if Host = nil then exit else begin // Преобразование pa := Host^.h_addr_list^; sa.S_un_b.s_b1 := Byte(pa[0]); sa.S_un_b.s_b2 := Byte(pa[1]); sa.S_un_b.s_b3 := Byte(pa[2]); sa.S_un_b.s_b4 := Byte(pa[3]); with TInAddr(sa).S_un_b do Result:=inet_addr(PChar(IntToStr(Ord(s_b1)) + '.' + IntToStr(Ord(s_b2)) + '.' + IntToStr(Ord(s_b3)) + '.' + IntToStr(Ord(s_b4)))); end; end; end; // **** Делаем Рандомный ник * function GetRandom(RandomLength: integer) : Integer; begin for i:=0 to 5 do begin Randomize; GetRandom:=Random(RandomLength); end; end; // **** Фукнция Warning Для проверки переменных procedure Warning(wnd : THandle; msg : string); begin MessageBox(wnd, @msg[1], 'Warning', MB_OK or mb_iconwarning); end; // ****************************
//###################################################### // ТЕЛО ПРОГРАММЫ //###################################################### begin WSAStartup ($0202, info); FSocket := socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); SockAddr.sin_family:=AF_INET; SockAddr.sin_port:=htons(6667); SockAddr.sin_addr.S_addr:=d_addr('10.230.0.35'); connect(FSocket,@SockAddr, sizeof(SockAddr)); // Делаем рандомные ники Nick:=('NICK N'+IntToStr(GetRandom(555555))+#10); // Делаем Рандомный NICK User:=('USER U'+IntToStr(GetRandom(555555))+' U'+IntToStr(GetRandom(555555))+' U'+IntToStr(GetRandom(555555))+' :uid0gid0 R'+IntToStr(GetRandom(555555))); send(Fsocket,Nick,length(Nick),MSG_DONTROUTE); send(Fsocket,User,length(User),MSG_DONTROUTE); end.
|
// *********Так вот , что пишет XSPIDER NICK N397405-USER U63776 U357730 U103060 :uid0gid0 R28108
Мне нужно чтоб он слал так NICK N397405 USER U63776 U357730 U103060 :uid0gid0 R28108 ...ещё и "-" приделал ...что делать ? |