Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191

    [VB6]Inviare contenuto ListBox tramite winsock...

    Ciao a tutti, ho il seguente problema...
    Ho una form che fa da server, la quale contiene una listbox con dentro alcuni items...
    Ho poi una form che fa da client, e contiene anch'essa una listbox...
    Io dovrei praticamente inviare tramite un button sul server il contenuto della listbox del server alla listbox del client...Come posso fare?...Grazie mille a tutti...

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Ma il winsock l'hai studiato?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191
    Si, conosco come inviare messaggi, etc, però non saprei come fare ad inviare il contenuto di una listbox, la quale contiene più items...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Se gli items non sono tantissimi, li leggi uno per uno, li unisci in una stringa (separandoli con un carattere noto) e trasmetti la stringa. In ricezione, separi gli items in base al carattere noto e li inserisci nella listbox.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191
    Si gli items sono pochi, massimo 6-8...
    Come carattere noto intendi tipo una cosa così: ¤¶£ ?
    Per separarli pero come faccio poi?
    Scusa le domande un po' stupide...

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Originariamente inviato da Zlatan8.
    Come carattere noto intendi tipo una cosa così: ¤¶£ ?
    Basta un carattere, non tanti caratteri.

    Che so, un § basterebbe ...

    Per separarli pero come faccio poi?
    Usi la funzione Split ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191
    Giusto la split, grazie mille, domani proverò...

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191
    Ciao, ho un problemino...Voglio aggiungere gli items della listbox in una textbox, ma non riesco a farlo, come posso fare?

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191
    Sono riuscito a passare il contenuto della text alla list, però ho un altro problema...
    Quando mi aggiunge gli items, me li aggiunge tutti su una riga, separati dal carattere noto...
    La split che ho fatto è questa: Dat$ = Split(Temp$, "¤¶£" & Chr(198))(1)

    Il codice che ho è:

    SERVER:
    Private Sub cmdListen_Click()
    WS(0).Close
    WS(0).LocalPort = 2000
    WS(0).Listen
    End Sub

    Private Sub WS_ConnectionRequest(Index As Integer, ByVal requestID As Long)
    Dim NextSocket As Integer
    NextSocket% = WS().UBound + 1
    Load WS(NextSocket%)
    WS(NextSocket%).Accept (requestID)
    End Sub

    Private Sub WS_DataArrival(Index As Integer, ByVal bytesTotal As Long)
    Dim Temp As String
    Dim Func As String
    Dim Dat As String

    Dim a As Long
    Dim b As String

    Dim Message As String
    WS(Index).GetData Temp
    Func$ = Split(Temp$, "¤¶£" & Chr(198))(0)
    Dat$ = Split(Temp$, "¤¶£" & Chr(198))(1)
    Select Case Func$
    Case Is = "LOGIN"
    List1.AddItem Dat$

    For a = 0 To (List1.ListCount - 1)
    b = b & List1.List(a) & "¤¶£"
    Next
    txtListName.Text = b

    Message = "LOGIN-LIST¤¶£" & Chr(198) & txtListName.Text

    Dim i As Integer
    For i% = 1 To WS().UBound
    Select Case WS(i%).State
    Case Is = sckConnected
    WS(i%).SendData Message

    DoEvents%
    Case Else
    End Select
    Next i%

    Case Is = "LOGOUT"
    txtData.Text = Dat$
    List1.Text = txtData.Text
    List1.RemoveItem List1.ListIndex
    End Select
    End Sub




    CLIENT:
    Private Sub cmdConnect_Click()
    WS.Connect "127.0.0.1", 2000
    End Sub

    Private Sub cmdExit_Click()
    Dim Data As String
    Data = "LOGOUT¤¶£" & Chr(198) & txtUsername.Text
    WS.SendData Data
    End Sub

    Private Sub WS_Connect()
    Dim Data As String
    Data = "LOGIN¤¶£" & Chr(198) & txtUsername.Text
    WS.SendData Data
    End Sub

    Private Sub WS_DataArrival(ByVal bytesTotal As Long)
    Dim Temp As String
    Dim Func As String
    Dim Dat As String
    WS.GetData Temp
    Func$ = Split(Temp$, "¤¶£" & Chr(198))(0)
    Dat$ = Split(Temp$, "¤¶£" & Chr(198))(1)
    Select Case Func$
    Case Is = "LOGIN-LIST"
    List1.AddItem Dat$
    End Select
    End Sub




    Come posso risolvere?

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    191
    Originariamente inviato da oregon
    Basta un carattere, non tanti caratteri.

    Che so, un § basterebbe ...



    Usi la funzione Split ...
    Ciao, potresti darmi una dritta su come faccio a dividere i vari nomi con la split?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.