AcasaFAQCautareInregistrareMembriGrupuriConectare

Distribuiți | 
 

 Cum Sa Facem Botzi De Direct Conect !

In jos 
AutorMesaj
DaNy
administrator
administrator
avatar

Numarul mesajelor : 336
Data de inscriere : 09/12/2007

MesajSubiect: Cum Sa Facem Botzi De Direct Conect !   Sam Dec 22, 2007 3:45 pm

Cum Sa Faci Botzi De Direct Conect In Visual Basic !

Acum va voi invata cum sa faceti botzii pentru Direct Conect.

Sa incepem:
Creati 3 butoane de comanda si le setati proprietatile asa:
Cod:

Command1 -  Name = Command1 Caption="Conecteaza"
Command2 -  Name = Command2 Caption="Deconecteaza"
Command3 -  Name = Command3 Caption="Trimite Msg"

Apoi creati 4 textboxes si le setati proprietatile asa:
Cod:

Text1 -  Name="txtAdresa"
Text1 -  Text="Adresa" 'punem asa la text ca sa le putem deosebi pe forma ( aplicatie )

Text2 -  Name=txtPort
Text2 -  Text="411"  ' asta este portul default pentru huburi ( il lasam asa ca sa le putem deosebi)

Text3 -  Name=txtMesaj
Text3 -  Text="Mesaj" ' mesajul care il trimite catre hub :-)

Text4 - Name=txtNick
Text4 - Text="Nickname"

Dupa ce ati facut pasii de mai sus...puneti pe forma si un timer
care sa aiba urmatoarele proprietati:
Cod:

Enabled=False
Interval=350

Dupa ce ati pus si timer-ul acum duceti-va la ToolBox (in stanga
de tot unde se afla obiectele (butoanele timere etc) )...acolo dati
click dreapta si alegeti Components.
Va aparea o fereastra...scroll down pana gasiti in lista de acolo
Microsoft Winsock Control 6.0 bifati-l apoi click pe Apply
si pe OK.
Dupa cum vedeti..in toolbox a aparut un nou obiect...puneti-l pe forma
si setatii proprietatile asa:
Cod:

Name=sock
Index=0

Acum dati dublu-click pe butonul Conecteaza !
Dupa cum vedeti..s-a deschis o noua fereastra...si au aparut 2
linii de cod:
Cod:

Private Sub Command1_Click()

End Sub

Intre cele doua linii de cod...copiati urmatorul cod:
Cod:


sock(0).RemoteHost = txtAdresa    -winsock-ul care l-ati pus pe forma..apare cu numele sock
                       'cum v-am spus sa-l setati..apoi in paranteza este cifra "0"
               ' adica indexul...care v-am spus sa-l setati asa :-)
              'remote host este egal cu txtAdresa adica se conecteaza la
              ' adresa pe care o scrieti voi in txtAdresa
sock(0).RemotePort = txtPort      ' idem ca mai sus doar ca remote port=txtPort ..adica se conecteaza
              ' la adresa de mai sus la portul care il scrieti voi in txtPort

sock(0).Connect         ' acum se conecteaza
Timer1.Enabled = True   


Apoi reveniti la forma si dati dublu click pe butonul "Deconecteaza".
Dupa cum vedeti iar au aparut o fereastra si 2 noi linii de cod:

Cod:


Private Sub Command2_Click()

End Sub


Intre ele copiati urmatorul cod:

Cod:


On error Resume Next    ' Error Handler
sock(0).close            'codul asta inchide conexiunea cu Remote Host-ul



Reveniti la forma si dati dublu-click pe butonul "Trimite Msg".
Dupa cum vedeti iar au aparut o fereastra si 2 noi linii de cod:
Cod:

Private Sub Command3_Click()

End Sub


Intre acestea copiati urmatorul cod:

Cod:
On Error Resume Next
sock(0).SendData "<" & txtNick & "> " & txtmess & "|"  'daca pui 500 de la fel :) trimite 500 mesaje..dar iei ban/kick imediat
sock(0).SendData "<" & txtNick & "> " & txtmess & "|"  'asta este exemplu
sock(0).SendData "<" & txtNick & "> " & txtmess & "|"  'si acesta :) deci botul acesta trimite pe hub 3 mesaje:)


Apoi din aceeasi fereastra...din dropdown-menu de sus...selectati general...si copiati urmatorul cod
Cod:

Function Lock2Key(StrLock As String) As String  ' asta e functia...trebuie copiata
                         
    Dim TLock2Key As String 'mereu ..nu e necesar sa o inveti pe de rost
    Dim TChar As Integer
    Dim rLock As String
    If Len(StrLock) < 3 Then
      Lock2Key = Left$("BROKENCLIENT", Len(StrLock))
      Exit Function
    End If
        For I = 7 To Len(StrLock)
            If Mid$(StrLock, I, 3) = " Pk" Then
                I = Len(StrLock)
            Else
                rLock = rLock & Mid$(StrLock, I, 1)
            End If
        Next I
    TLock2Key = Chr$(Asc(Left$(rLock, 1)) Xor Asc(Right$(rLock, 1)) Xor Asc(Mid$(rLock, Len(rLock) - 1, 1)) Xor 5)
    For I = 2 To Len(rLock)
        TLock2Key = TLock2Key & Chr$(Asc(Mid$(rLock, I, 1)) Xor Asc(Mid$(rLock, I - 1, 1)))
    Next I
    For I = 1 To Len(TLock2Key)
        TChar = Asc(Mid$(TLock2Key, I, 1))
        TChar = TChar * 16 + TChar \ 16 'Swap bits 11110000 -> 00001111
        TChar = TChar Mod 256
        If TChar = 0 Or TChar = 5 Or TChar = 36 Or TChar = 96 Or TChar = 124 Or TChar = 126 Then
            Lock2Key = Lock2Key & "/%DCN" & Right$("000" & TChar, 3) & "%/"
        Else
            Lock2Key = Lock2Key & Chr$(TChar)
        End If
    Next I
End Function 'aici se termina functia :-)
Aceasta este functia LOCK2KEY...nu voi sta sa explic ce este si ce face...
ca dureaza ceva..dar daca vreti sa va interesati mai mult despre ea si despre protocolul
direct conect ...intrati aici:

Cod:


http://gempond.com/odcps/



Apoi reveniti la forma..si dati dublu click pe Timer.
Dupa cum vedeti iar a aparut o fereastra si 2 noi linii de cod:

Cod:


Private Sub Timer_Timer()

End Sub


Intre ele copiati codul urmator:

Cod:


On Error Resume Next
Dim varkey As String
Dim rLock As String
Dim varlock As String
sock(0).GetData varlock, vbString
If InStr(varlock, "$Lock") Then
For I = 1 To Len(varlock)
            If Mid(StrLock, I, 3) = " Pk" Then
                I = Len(varlock)
            Else
                rLock = rLock & Mid(varlock, I, 1)
            End If
        Next I
varlock = rLock
varkey = Lock2Key(varlock)
sock(0).SendData "$Key " & varkey & "|"      ' ce trimite catre hub
sock(0).SendData "$ValidateNick " & txtNick & "|"        ' "valideaza" nick-ul
sock(0).SendData "$Version 1.0091|"    ' ce trimite catre hub
sock(0).SendData "$MyINFO $ALL " & txtNick & " <oDC>$ $Cable$$9421036014$|"        ' ce trimite catre hub
sock(0).SendData "$GetNickList|"    ' ce trimite catre hub
sock(0).GetData varuser, vbString ' ce trimite catre hub
sock(0).SendData "$GetINFO " & txtNick & " " & txtNick & "|"  ' ce trimite catre hub
End If
Timer1.Enabled = False


Ca sa intelegeti ce trimite catre hub bot-ul va recomand sa cititi/invatati
protocolul direct conect...care il puteti gasi la:

Cod:


http://gempond.com/odcps/




Felicitari ! Tocmai ai facut propriul bot de direct conect !



Puteti downloada sursa de Aici
Sus In jos
Vezi profilul utilizatorului http://gaming.forumotion.com
 
Cum Sa Facem Botzi De Direct Conect !
Sus 
Pagina 1 din 1

Permisiunile acestui forum:Nu puteti raspunde la subiectele acestui forum
 :: Help :: Tutoriale direct connection-
Mergi direct la: