Total Hack Cheat
Benvenuto/a su Total hack Cheat....
non aspettate altro tempo Registratevi!!

[Guida]Creare Chat in VB6

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso

[Guida]Creare Chat in VB6

Messaggio Da RaYoZ il Dom Set 12, 2010 2:33 pm

Con questa guida voglio dimostrarvi quando sia semplice creare una normalissima chat in Visual Basic 6.0.
Extra
La facilità deriva anche dal fatto che, essendo un linguaggio ad alto livello, il Visual Basic si avvicina molto nella sua sintassi alla lingua umana e quindi ne facilita la stesura di un sorgente. Da sottolineare il fatto che sapendo programmare con il Visual Basic, C e Assembly si può creare di tutto (driver, software gestionali, eccellenti trojan backdoor, sistemi operativi). Infatti il Visual Basic è un perfetto linguaggio per creare software gestionali, database, programmi per fatture e via dicendo. Il C d'altro canto è di molto superiore e viene utilizzato per creare sistemi operativi, software altamente complessi e di tutto e di più. L'Assembly, invece, è un linguaggio di basso livello poiché si avvicina nella sua sintassi molto al linguaggio macchina. Provare a creare una calcolatrice con l'Assembly significa scrivere intere pagine di codice. Questo linguaggio, essendo molto simile al linguaggio macchina, riesce a gestire ogni minimo particolare dei componenti hardware e grazie a questo pregio è usato anche per creare driver, ma soprattutto per creare dei trojan molto potenti.
Fine Extra

Client

Componenti

Command1=Connetti/Disconnetti
Command2=Invia
Text1=TextBox della chat
Text2=IP Remoto
Text3=Porta Remota
Text4=TextBox del messaggio che invii
Shape1=Quadratino colorato
Winsock1=il winsock per la connessione

Immagine

[Devi essere iscritto e connesso per vedere questa immagine]



I sorgenti, per non scrivere troppo, li ho commentati nel codice.

Codice:
Private Sub Command1_Click()
If Command1.Caption = "CONNETTI" Then 'se il pulsante ha il testo CONNETTI
Winsock1.RemoteHost = Text2.Text  'imposta come porta del winsock quella scritta nella text2
Winsock1.RemotePort = Text3.Text  'imposta come IP remoto del winsock quello a cui connettersi,ovvero l'IP del server
Winsock1.Connect 'connette il winsock
Shape1.BackColor = &H80FF& 'cambia il colore del quadratino in arancione
ElseIf Command1.Caption = "DISCONNETTI" Then 'altrimenti se il pulsante ha il testo DISCONNETTI
Winsock1.Close 'chiude la connessione col winsock e
Winsock1_Close 'rimanda all'evento della chiusura del winsock
End If
End Sub

Private Sub Command2_Click()
Winsock1.SendData Text4.Text 'invia il testo al server
Text1.Text = Text1.Text & "Hai scritto: " & Text4.Text & vbCrLf 'e lo scrive nella text1
Text1.SelStart = Len(Text1.Text)
End Sub

Private Sub Form_Load() 'quando apriamo l'applicazione
Command2.Enabled = False 'il pulsante INVIA diventa inutilizzabile
Text2.Enabled = True 'abilita la modifica della text2
Text3.Enabled = True 'abilita la modifica della text3
End Sub

Private Sub Text1_Change() 'se il testo della text1 cambia, quindi si riceve o si invia un messaggio
'salva tutto in un file di log...opzione speciale
Open App.Path & "\Chat_log-Client.txt" For Output As #1
Print #1, Text1.Text
Close #1
End Sub

Private Sub Winsock1_Close() 'se si chiude la connessione
Shape1.BackColor = &HFF& 'il quadratino diventa rosso
Command1.Caption = "CONNETTI" 'il pulsante si rinomina CONNETTI
Command2.Enabled = False 'il pulsante INVIA viene bloccato
Text2.Enabled = True 'la text2 diventa modificabile
Text3.Enabled = True 'la text3 diventa modificabile
End Sub

Private Sub Winsock1_Connect() 'se si connette il winsock
Shape1.BackColor = &HFF00& 'il quardatino diventa verde
Command1.Caption = "DISCONNETTI" 'il pulsante si rinomina DISCONNETTI
Command2.Enabled = True 'il pulsante INVIA diventa utlizzabile
Text2.Enabled = False 'la text2 non è più modificabile
Text3.Enabled = False 'la text3 non è più modificabile
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) 'sono in arrivo dati
Dim risposta As String 'dichiaro che risposta è un testo
Winsock1.GetData risposta, vbString 'faccio scaricare al winsock il testo e dico che è una stringa di testo
'inserisce nella text1 la risposta dal server
Text1.Text = Text1.Text & "Il server ha risposto: " & risposta & vbCrLf
Text1.SelStart = Len(Text1.Text)
End Sub

Private Sub Winsock1_Error(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) 'se il winsock va in crash o subisce un errore
Winsock1.Close 'la connessione viene chiusa
MsgBox "Errore!La connessione verrà chiusa!", vbCritical, "ERRORE" 'compare il messaggio di errore
End Sub

Private Sub Winsock1_SendComplete() 'se l'invio del testo viene completato
Me.Caption = Me.Caption & "- Messaggio inviato!" 'imposta un nuovo titolo della chat
End Sub


Server

Componenti

Command1=CONNETTI/DISCONNETTI
Command2=INVIA
Text1=testo della chat
Text2=testo della porta
Text3=testo da inviare
Shape1=quadratino colorato
Winsock1=winsock della connessione

Immagine

[Devi essere iscritto e connesso per vedere questa immagine]

Codice:
Private Sub Command1_Click() 'se premi sul pulsante ascolta
If Command1.Caption = "ASCOLTA" Then 'se il testo del pulsante è ASCOLTA
Winsock1.LocalPort = Text2.Text 'imposta la porta locale del winsock sulla quale accettare connessioni
Winsock1.Listen 'mette in ascolto il winsock
Text1.Text = Text1.Text & "In ascolto sulla porta " & Winsock1.LocalPort 'inserisce questo testo
Text1.SelStart = Len(Text1.Text)
Shape1.BackColor = &H80FF& 'cambia il colore del quadratino
ElseIf Command1.Caption = "DISCONNETTI" Then 'se il testo del pulsante è DISCONNETTI
Winsock1.Close 'chiude la connessione
Winsock1_Close 'esegue l'evento Close del winsock
End If
End Sub

Private Sub Command2_Click()
Winsock1.SendData Text3.Text 'invia il testo della Text3
End Sub

Private Sub Form_Load()
Command2.Enabled = False 'all'apertura dell'applicazione disabilita il pulsante INVIA
End Sub

Private Sub Text1_Change()
'crea un log della chat
  Open App.Path & "\Chat_log-Server.txt" For Output As #1
Print #1, Text1.Text
Close #1
End Sub

Private Sub Winsock1_Close() 'se viene terminata la connessione
Shape1.BackColor = &HFF& 'cambia il colore del quadratino
Command1.Caption = "ASCOLTA" 'cambia il testo del pulsante
Command2.Enabled = False 'disabilita il pulsante INVIA
Text2.Enabled = True 'abilita la Text2 per cambiare porta
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long) 'se viene richiesta la connessione
If (Winsock1.State <> sckClosed) Then Winsock1.Close 'se c'è già una connessione la termina
    Winsock1.Accept requestID 'e accetta la nuova
    Shape1.BackColor = &HFF00& 'cambia il colore del quadratino
Command1.Caption = "DISCONNETTI" 'cambia il testo del pulsante
Command2.Enabled = True 'abilita il pulsante INVIA
Text2.Enabled = False 'disabilita il cambiamento della porta
Text1.Text = "" 'pulisce la Text1
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) 'se sono in arrivo dati
Dim risposta As String 'dichiaro che risposta è un testo
Winsock1.GetData risposta, vbString 'faccio scaricare al winsock i dati e gli dico che sono un testo
Text1.Text = Text1.Text & "Il client ha risposto: " & risposta & vbCrLf 'inserisce la risposta del server
Text1.SelStart = Len(Text1.Text)
End Sub

Private Sub Winsock1_Error(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) 'se la connessione va in crash o fa errore
Winsock1.Close 'chiude la connessione
MsgBox "Errore!Connessione terminata!", vbCritical, "Errore" 'mostra il messaggio di errore
End Sub

Private Sub Winsock1_SendComplete() 'se ha inviato il testo
Text1.Text = Text1.Text & "Hai scritto: " & Text3.Text & vbCrLf 'inserisce una conferma
Text1.SelStart = Len(Text1.Text)
End Sub
Fine
Fonte:Web

RaYoZ
Admin
Admin

Messaggi : 1040
Punti : 2245
Data d'iscrizione : 03.04.10
Età : 22
Località : immerso nei pensieri

Tornare in alto Andare in basso

Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto

- Argomenti simili

 
Permesso di questo forum:
Non puoi rispondere agli argomenti in questo forum