| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Visual Basics Programación >> Content
    Cómo codificar Software chat sin utilizar una base de datos
    Conocer cómo codificar una sala de chat sin necesidad de utilizar una base de datos puede ayudarle a crear un servidor /aplicación cliente sin tener que dedicar tiempo a diseñar una base de datos . Un programa de chat se crea mediante el uso de dos aplicaciones , el cliente y el servidor. La aplicación de servidor se encargará de todas las conexiones de los clientes para establecer la comunicación . El programa cliente se instala en cualquier ordenador querer conectar con el servidor de chatear con otros clientes . Puede crear esta aplicación utilizando Microsoft Visual Basic.NET , también conocido como VB.NET . Cosas que necesitará
    Microsoft Visual Basic Express
    Ver Más instrucciones
    1

    Abra Microsoft Visual Basic Express, haga clic en " Nuevo proyecto ... " en el panel izquierdo de la pantalla, a continuación, seleccione " Aplicación de consola. " Haga clic en " Aceptar".

    2 Pulse la tecla "Ctrl " y " A ", después pulse en "Eliminar " para eliminar todo el código existente. Copia y pega el código de abajo en su " Module1.vb " para crear la aplicación de servidor :

    Importaciones System.Net.Sockets

    Imports System.Text Módulo


    Module1

    hshTbl Dim As New Hashtable

    Sub Main ()

    svrSckt Dim As New TcpListener ( 8888 )

    TClient As TcpClient

    infntCntr Dim As Integer

    cntr Dim As Integer

    svrSckt.Start ()

    msg ( "Servidor de introducción para charlar .... " )

    cntr = 0

    infntCntr = 0

    Para infntCntr = 1 a 2

    infntCntr = 1

    cntr + = 1

    TClient = svrSckt.AcceptTcpClient ()

    Dim btsFrom ( 10024 ) As Byte

    datosCliente dévil como secuencia

    NetworkStream dévil como NetworkStream = _

    tClient.GetStream ()

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

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

    datosCliente = _

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

    hshTbl ( datosCliente ) = TClient

    difusión ( datosCliente + " se ha unido " , datosCliente , False )

    msg ( datosCliente + " se ha unido a la sala de chat " )

    cliente Dim As New handleClinet

    client.startClient ( TClient , datosCliente , Sub

    Sub MSG ( glutamato monosódico ByVal como secuencia)

    msg.Trim ()

    Console.WriteLine ( ">> " + msg)
    < p > End Sub

    emisión Sub Private (msg ByVal As String , _

    usrname ByVal As String , ByVal flg As Boolean )

    dicEntry Dim As
    DictionaryEntry

    En cada dicEntry En hshTbl

    broadcastSocket As TcpClient

    broadcastSocket = CType ( dicEntry.Value , TcpClient )

    broadcastStream dévil como NetworkStream = _

    broadcastSocket.GetStream ()

    broadcastBytes Dim Como [ Byte ] ()

    Si flg = TRUE entonces

    broadcastBytes = Encoding.ASCII.GetBytes ( usrname + " dice: " + msg)

    demás

    broadcastBytes = Encoding.ASCII.GetBytes ( msg)

    End If

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

    broadcastStream.Flush ()

    Siguiente

    End Sub

    Public Class handleClinet

    TClient Dim As
    TcpClient

    ClNO As String Dim

    hshTbl As Hashtable

    Public Sub startClient ( ByVal inClientSocket Como TcpClient , _

    clnNum ByVal As String , ByVal hsTbl Como Hashtable )

    Me.tClient = inClientSocket

    Me.clNo = clnNum

    Me.hshTbl = hsTbl

    ctThread As threading.Thread = New threading.Thread ( AddressOf doChat )

    ctThread.Start ()

    End Sub

    doChat Sub Private ()

    infntCntr Dim As Integer Dim

    rqstCnt As Integer Dim

    btsFrom ( 10024 ) As Byte

    datosCliente dévil como secuencia

    btsSend As [ Byte ] ()

    responseSrvr Dim As String

    RCNT dévil como secuencia

    rqstCnt = 0

    Para infntCntr = 1 a 2

    infntCntr = 1

    Prueba

    rqstCnt = rqstCnt + 1

    NetworkStream dévil como NetworkStream = _

    tClient.GetStream ()

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

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

    datosCliente = _

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

    msg ( " Desde el cliente :" + ClNO + ": " + datosCliente )

    RCNT = Convert.ToString ( rqstCnt )
    emisión

    ( datosCliente , ClNO , verdadero)

    Catch ex As Exception

    MsgBox ( ex.ToString )

    End Try

    Siguiente

    End Sub

    End Class

    End Module
    3

    Abra una nueva instancia de Microsoft Visual Basic Express , haga clic en "Nuevo proyecto ... " en el panel izquierdo de la pantalla, a continuación, seleccione " Aplicación de Windows Forms ". Haga clic en " Aceptar". Haga clic en el panel " Herramientas " , haga doble clic en " TextBox " para añadir un nuevo cuadro de texto . Añadir otros dos cuadros de texto utilizando el mismo método. Agregue dos botones de en el menú " Herramientas " .
    4

    doble clic en el formulario, pulse la tecla "Ctrl " y " a ", a continuación, pulse "Eliminar " para eliminar todo el código existente. Copia y pega el código de abajo en su módulo " Form1.vb " para crear el programa cliente :

    Importaciones System.Net.Sockets

    Imports System.Text

    Public Class Form1

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

    srvrStrm dévil como NetworkStream

    rddata dévil como secuencia

    infCntr As Integer

    Private Sub Button1_Click ( remitente de ByVal como System.Object , _

    ByVal e como System.EventArgs ) Handles Button1.Click

    streamOut As Byte () = _

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

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

    srvrStrm.Flush ()

    End Sub

    msj Sub Private ()

    Si Me.InvokeRequired Entonces

    Me.Invoke (New MethodInvoker ( AddressOf msg) )

    demás < br >

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

    End If End Sub


    Private Sub Button2_Click ( remitente de ByVal como System.Object , _

    ByVal e como System.EventArgs ) Handles Button2.Click

    rddata = " Conectados a charlar servidor ... "

    msg ( )

    clntSckt.Connect ( "127.0.0.1 " , 8888 )

    srvrStrm = clntSckt.GetStream ()

    streamOut As Byte () = _
    < p> System.Text.Encoding.ASCII.GetBytes ( TextBox3.Text + " $" )

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

    srvrStrm.Flush ()

    ctThread As threading.Thread = New threading.Thread ( AddressOf getMessage )

    ctThread.Start ()

    End Sub Private Sub

    getMessage ()

    Para infCntr = 1 a 2

    infCntr = 1

    srvrStrm = clntSckt.GetStream ()

    buffSize Dim As Integer

    Instream Dim ( 10024 ) As Byte

    buffSize = clntSckt.ReceiveBufferSize

    srvrStrm.Read ( dentro de la corriente , 0, buffSize )

    returndata As String = _
    < p> System.Text.Encoding.ASCII.GetString ( dentro de la corriente )

    rddata = "" + returndata

    msg ()

    Siguiente

    End Sub

    End Class
    5

    Ejecute el programa de servidor de primera con la tecla " F5 ". Inicie el programa cliente con la tecla " F5 ". Escriba su nombre en " TextBox3 ", luego haga clic en " Button2 "para establecer una conexión con el programa servidor.
    6

    Escriba un mensaje en" TextBox2 , "y luego haga clic en" Button1 " para enviar el mensaje . el mensaje se mostrará en la ventana de salida del servidor.

    Previous :

    next :
      Artículos relacionados
    ·CorelDRAW VBA Formulario Tutorial 
    ·Cómo devolver un valor en un cuadro de lista de varias…
    ·Cómo enviar correo electrónico HTML con CDO 
    ·Cómo analizar Email Con VBS 
    ·Cómo calcular el acimut en VB 
    ·Cómo utilizar Vb.Net en HTML Dinámico 
    ·Cómo crear una calculadora con Visual Basic y ArcGIS 
    ·Cómo utilizar el cuadro de texto en Visual Basic 6.0 
    ·Cómo buscar un archivo mediante una macro 
    ·Ventajas de VB.NET 
      Artículos destacados
    ·¿Qué es la programación de CLR 
    ·Las diferencias en Malloc y calloc 
    ·Cómo hacer una ventana divisora ​​personalizado en MFC…
    ·Cómo crear PHP Contacto formularios con campos 
    ·Como salida de caracteres de escape en archivo en PHP 
    ·Cómo obtener el número de líneas en un archivo Read …
    ·Cómo importar Excel a MySQL 
    ·Cómo encontrar la fecha para todos los viernes del añ…
    ·Cómo abrir un archivo PNP Hecho por Art Explosion 
    ·Cómo exportar a CSV MySQL en PHP 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com