Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Visual Basics Programming >> Content
Hoe te Chat softwarecode zonder gebruik van een database
Weten hoe je een chatruimte coderen zonder gebruik van een database kan u helpen een server /client- applicatie te maken zonder tijd te besteden ontwerpen van een database . Een chat- programma wordt gemaakt met behulp van twee applicaties , de client en de server . De server applicatie zal alle client- verbindingen om de communicatie . De client -programma is geïnstalleerd op elke computer te willen verbinden met de server om te chatten met andere klanten . U kunt deze toepassing met behulp van Microsoft Visual Basic.NET , ook wel bekend als VB.NET maken . Wat je nodig hebt
Microsoft Visual Basic Express
Toon Meer Aanwijzingen
1

Open Microsoft Visual Basic Express , klikt u op " New Project ... " aan de linkerkant van uw scherm , selecteer vervolgens " Console Application . " Klik op "OK . "

Druk " Ctrl " 2 en " A ", druk daarna op " Delete " om alle bestaande code te verwijderen . Kopieer en plak de code hieronder in uw " Module1.vb " naar de server applicatie te maken :

Imports
System.Net.Sockets

Imports
System.Text

Module Module1
< br

Dim hshTbl > als Nieuwe Hashtable

Sub Main ( )

Dim svrSckt
als Nieuwe TcpListener ( 8888 )

Dim tClient
Zoals TCPClient

Dim infntCntr als Geheel

Dim cntr
als Geheel

svrSckt.Start
( )

msg
( " Server Gestart voor chatten .... " ) op Twitter

cntr = 0

infntCntr
= 0

infntCntr = 1 To 2

infntCntr
= 1

cntr
+ = 1

tClient
= svrSckt.AcceptTcpClient ( ) op

Dim btsFrom ( 10.024 ) als Byte

Dim ClientData
als Koord

Dim NetworkStream
Zoals NetworkStream = _

tClient.GetStream
( )

networkStream.Read
( btsFrom , 0 , CInt ( tClient.ReceiveBufferSize ) ) op

ClientData = System.Text.Encoding.ASCII.GetString ( btsFrom )

ClientData
= _

clientData.Substring
( 0 , clientData.IndexOf ( " $ " ) )

hshTbl
( ClientData ) = tClient

uitzending
( ClientData + " heeft zich aangesloten " , ClientData ,

msg Valse ) op Twitter ( ClientData + " heeft zich aangesloten chatroom " )

Dim client
als Nieuwe handleClinet

client.startClient
( tClient , ClientData , Sub

Sub msg
( ByVal msg As String )

msg.Trim ( )

Console.WriteLine
( " >> " + msg ) op Twitter

End Sub

Private Sub uitzending
( ByVal msg As String , _ ByVal

usrName
als Koord , ByVal flg zoals Van Boole )

Dim dicEntry
Zoals DictionaryEntry

Voor Elke dicEntry In hshTbl

Dim broadcastSocket
Zoals TCPClient

broadcastSocket
= C ( dicEntry.Value , TCPClient )

Dim broadcastStream
Zoals NetworkStream = _

broadcastSocket.GetStream ( )

Dim broadcastBytes
Zoals [ Byte ] ( ) op

Als flg = True

broadcastBytes dan
= Encoding.ASCII.GetBytes ( usrName + " zegt : " + msg ) op

Else

broadcastBytes
= Encoding.ASCII.GetBytes ( msg )

End
Als

broadcastStream.Write
( broadcastBytes , 0 , broadcastBytes . lengte )

broadcastStream.Flush
( )

Volgende

End Sub

Public Class handleClinet

Dim tClient
Zoals TCPClient

Dim ClNO als Koord

Dim hshTbl
Zoals Hashtable

Public Sub startClient ( ByVal inClientSocket Zoals TCPClient , _ ByVal

clnNum
als Koord , ByVal hsTbl Zoals hash ) < br >

Me.tClient = inClientSocket

Me.clNo
= clnNum

Me.hshTbl
= hsTbl

Dim ctThread
Zoals Threading.Thread = Nieuw Threading.Thread ( AddressOf doChat )

ctThread.Start ( ) op

End Sub

Private Sub doChat
( )

Dim infntCntr
als Geheel

Dim rqstCnt als Geheel

Dim btsFrom
( 10.024 ) als Byte

Dim ClientData
als Koord

Dim btsSend
Zoals [ Byte ] ( )

Dim responseSrvr
als Koord

Dim rCnt
als Koord

rqstCnt
= 0

infntCntr = 1 To 2

infntCntr
= 1

Try

rqstCnt = rqstCnt + 1

Dim NetworkStream
Zoals NetworkStream = _

tClient.GetStream
( )

networkStream.Read
( btsFrom , 0 , CInt ( tClient.ReceiveBufferSize ) ) op

ClientData = System.Text.Encoding.ASCII.GetString ( btsFrom ) op

ClientData = _

clientData.Substring
( 0 , clientData.IndexOf ( " $ " ) )

msg
( " From client : " + ClNO + " : " + ClientData )

rCnt
= Convert.ToString ( rqstCnt )

uitzending
( ClientData , ClNO , ware ) op

Catch ex als Uitzondering

MsgBox
( ex.ToString )

End of Try

Volgende

End of Sub

End Class

End Module
3


Open een nieuw exemplaar van Microsoft Visual Basic Express , klikt u op " New Project ... " op het linkerpaneel van uw scherm , selecteer " Windows Forms Application . " Klik op "OK . " Klik op de " Toolbox " venster , dubbelklik op " TextBox " om een nieuw tekstvak toe te voegen . Voeg nog twee tekstvakken met dezelfde methode . Voeg twee knoppen uit de " Toolbox " menu .
4

Dubbelklik op het formulier , Druk op " Ctrl " en " A ", druk daarna op " Delete " om alle bestaande code te verwijderen . Kopieer en plak de code hieronder in uw " Form1.vb " module aan de client-programma te maken:

Imports
System.Net.Sockets

Imports
System.Text

Public Class Form1


Dim clntSckt As New System.Net.Sockets.TcpClient ( )

Dim srvrStrm
Zoals NetworkStream

Dim rddata
als Koord

Dim infCntr
als Geheel

Private Sub
Button1_Click ( ByVal afzender als System.Object , _

ByVal e als System.EventArgs ) Handles Button1.Click

Dim streamOut
als Byte ( ) = _

System.Text
. Encoding.ASCII.GetBytes ( TextBox2.Text + " $ " )

srvrStrm.Write
( streamOut , 0 , streamOut.Length ) srvrStrm.Flush ( )



end Sub

Private Sub msg ( )

Als Me.InvokeRequired

Me.Invoke dan
( New MethodInvoker ( AddressOf msg ) ) op Twitter

Else < br >

TextBox1.Text = TextBox1.Text + Environment.NewLine + " >> " + rddata

End
Als

End Sub

Private Sub Button2_Click
( ByVal afzender als System.Object , _

ByVal e als System.EventArgs ) Handles Button2.Click

rddata
= " conected naar server chatten ... "

msg
( )

clntSckt.Connect
( " 127.0.0.1 " , 8888 )

srvrStrm = clntSckt.GetStream ( )

Dim streamOut
Zoals Byte ( ) = _

System.Text.Encoding.ASCII.GetBytes ( TextBox3.Text + " $ " )

srvrStrm.Write
( streamOut , 0 , streamOut.Length )

srvrStrm.Flush
( ) < br

Dim ctThread > Zoals Threading.Thread = Nieuw Threading.Thread ( AddressOf getMessage )

ctThread.Start
( ) op

End Sub

Private Sub getMessage ( ) op Twitter

Voor infCntr = 1 To 2

infCntr
= 1

srvrStrm = clntSckt.GetStream ( )

Dim buffSize
als Geheel

dim InStream ( 10024 ) Zoals Byte

buffSize = clntSckt.ReceiveBufferSize

srvrStrm.Read
( instream , 0 , buffSize )

Dim returndata
As String = _

System.Text.Encoding.ASCII.GetString ( instream )

rddata = " " + returndata

msg ( ) op

Volgende

End Sub

End Class
5


Voer het server programma voor het eerst door op " F5 . " Start de client-programma door te drukken op " F5 ". Typ uw naam in " Textbox3 , " klik " button2 "om een verbinding met de server programma op te stellen .

Type 6 een bericht in" TextBox2 , " en klik op ' Button1 ' om uw bericht te verzenden . het bericht wordt weergegeven in de output venster van de server .

Previous: Next:
  Visual Basics Programming
·Hoe maak je een argument Stuur…
·Hoe de FormatDateTime functie …
·Hoe maak je een Form Fit Elk f…
·Hoe te valideren in Visual Bas…
·Hoe uw eigen Installer Maak 
·Hoe de ProgressBar Folder Met …
·Hoe maak je een Sorteerbare Li…
·Hoe maak je van een dataset in…
·Het wijzigen van de tekstkleur…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Hoe om tekst te tekenen in Xcode 
·Hoe te Latijn1 converteren naar UTF - 8 
·Wat Taal Is de Python Interpreter Coded …
·Hoe de Palette gebruiken in NetBeans 
·Hoe toe te passen voor Legal Voogdij in …
·Hoe te berekenen schermresolutie Met Jav…
·Hoe maak je een Gridview Veld bijwerken …
·Hoe maak je verbinding OpenOffice Base n…
·Hoe maak je een Domain Search Engine ver…
Copyright © Computer Kennis https://www.nldit.com