Netaholic
Messages postés4Date d'inscriptionmercredi 17 décembre 2003StatutMembreDernière intervention25 septembre 2004
-
24 sept. 2004 à 15:44
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 2014
-
25 sept. 2004 à 12:10
Voilà j'ai commencé un chat sans serveur. Pour l'instant tout va bien. Le problème se pose pour afficher la liste des pseudos des personnes connectés dans une listbox (c'est peut être même pas une listbox qui faut utiliser mais j'en sais rien du tout) et aussi pour rechercher les connectés après nous. J'aimerai aussi ne pas avoir à mettre l'ip pour parler aux autres (en clair connection auto quand on parle.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 24 sept. 2004 à 16:13
Salut Netaholic
Je ne sais pas si c'est à toi que j'ai passé le lien du chat sans serveur (clique ici), mais il le fait tout seul ...
En ce qui concerne l'auto recherche des chaters, tu peux yu associer cette source qui est un controle qui utilise le broadcasting sur réseau privé et qui permet de retrouver l'IP de la machine qui est en écoute.
Mais accroche toi, c'est un peu complexe si tu débutes en VB
Si tu as besoin d'aide ponctuelle sur ces projet, n'hésite pas à venir causer sur le chat du site ([ :document.chatloginform.submit clique ici])
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 24 sept. 2004 à 21:36
Créer un form avec les contrôles suivant dessus : Winsock1, Timer1, List1, Text1, Command1, Command2, Command3.
Command1, 2 et 3 sont des boutons
Caption de Command1 : 'Connexion'
Caption de Command2 : 'Déconnexion'
Caption de Command3 : '>>'
Command1 permet de se connecté à la base
Command2 permet de se déconnecté à la base
Command3 Envoi le message
Public sIp, sPseudo, UName As String
Private Sub Command1_Click()
'Ouverture du fichier
Open "UserList.Lst" For Input As #1
UserList = Input(LOF(1), #1)
Close #1
'Récupération du Pseudo
UName = InputBox("Entrez votre pseudo")
'Récupération de l'ip
UiP = Winsock1.LocalIP
'Vérification si le pseudo n'est pas pris par un autre utilisateur
pTest = InStr(UserList, UName)
If pTest <> 0 Then
MsgBox "Pseudo déjà utilisé"
Exit Sub
End If
'Enregistrement de l'utilisateur
Open "UserList.lst" For Output As #1
Print #1, UserList & "{User}" & UName & "-ip-" & UiP & "{/User}"
Close #1
'Activation de la mise à jour de la liste
Timer1.Interval = 500 'Mise à jour toute les 500 Millisecondes
Timer1.Enabled = True 'Lancement du timer
Me.Caption "Vous êtes connecté"
End Sub
Private Sub Command2_Click()
'Ouverture du fichier liste
Open "UserList.Lst" For Input As #1
UserList = Input(LOF(1), #1)
Close #1
'Recherche dans la liste le Pseudo à supprimer
StrPseudo = "{User}" & UName & "-ip-" & Winsock1.LocalIP & "{/User}"
p1 = InStr(UserList, StrPseudo)
'Recréation de la liste
UserList = Mid(UserList, 1, p1) & Mid(UserList, p1 + Len(StrPseudo))
Open "UserList.Lst" For Output As #1
Print #1, UserList
Close #1
End Sub
Private Sub Form_Load()
On Error GoTo ErrFile
Open "UserList.Lst" For Input As #1
Close #1
Exit Sub
ErrFile:
Open "UserList.Lst" For Output As #1
Close #1
End Sub
Private Sub Timer1_Timer()
'Vidage de la liste
List1.Clear
'Ouverture du fichier liste
Open "UserList.Lst" For Input As #1
UserList = Input(LOF(1), #1)
Close #1
'Recherche des Pseudos
p1 = 0
p2 = Len(UserList)
Do Until p1 > p2
p1 = InStr(UserList, "{User}")
p1 = p1 + Len("{User}")
p3 = InStr(p1, UserList, "-ip-")
'Récupération du pseudo
Pseudo = Mid(UserList, p1, p3 - p1)
p1 = p3 + Len("-ip-")
p3 = InStr(p1, UserList, "{/User}")
'Récupération de l'ip
Ip = Mid(UserList, p1, p3 - p1)
'Ajout du Pseudo dans la liste
List1.AddItem Pseudo
p1 = p3 + Len("{/User}")
Loop
End Sub
Private Sub List1_Click()
'Ouverture du fichier liste
Open "UserList.Lst" For Input As #1
UserList = Input(LOF(1), #1)
Close #1
'Recherche des Pseudos
p1 = 0
p2 = Len(UserList)
Do Until p1 > p2
p1 = InStr(UserList, "{User}")
p1 = p1 + Len("{User}")
p3 = InStr(p1, UserList, "-ip-")
'Récupération du pseudo
sPseudo = Mid(UserList, p1, p3 - p1)
p1 = p3 + Len("-ip-")
p3 = InStr(p1, UserList, "{/User}")
'Récupération de l'ip
sIp = Mid(UserList, p1, p3 - p1)
'Ajout du Pseudo dans la liste
List1.AddItem Pseudo
p1 = p3 + Len("{/User}")
If Pseudo = List1.Text Then
Text1.Text = sPseudo & " > "
Exit Do
End If
Loop
End Sub
Private Sub Command3_Click()
'Envoi du message
'L'adresse ip est dans la variable : sIp
'Le Pseudo distant est dans la variable : sPseudo
End Sub
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 24 sept. 2004 à 16:07
Peut-être Faire un fichier texte ou le nom des utilisateurs est séparer par des ';' ou autre caractères ou mots.
Pour mettre à jour ta liste utilise un Timer qui effacera ta ListBox et rechargera le fichier qui contient les noms.
Ce même fichier peut également contenir les IPs et quand tu clique sur l'utilisateur, le clic effectue une recherche dans ce fichier pour obtenir l'ip.
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 24 sept. 2004 à 22:45
Désolé de te dire ça FullNet, mais quand on a une liste de question comme celle que tu as poser depuis que tu est ici, on se la boucle.
Genre : " comment faire une barre en haut (Fichier, édition, ?....) "
En fait cela s'appelle une Baree de menu et non une Barre en Haut.
Voici ta liste :
Sujet Rép. Date
Re : Aide sur winsock pour un débutant 0 24/09/2004 22:39:23
Re : Réouverture de winsock 0 24/09/2004 22:35:26
questiohn existencielle lol!! 1 24/09/2004 22:28:09
Re : Site mal fait 0 10/09/2004 23:45:50
Re : Winsock et Mirc 0 24/08/2004 15:08:11
Re : scusez-moi mais le chat FAIT DUR! 0 21/08/2004 01:41:23
Project failed to built! 0 31/07/2004 18:52:35
Re : image sur un bouton de toolbar 0 31/07/2004 16:47:04
Re : VB6FR.DLL 0 31/07/2004 16:30:51
image sur un bouton de toolbar 3 31/07/2004 16:09:40
Re : BJR! importer un fichier dans mon programme 0 31/07/2004 16:03:31
BJR! importer un fichier dans mon programme 12 31/07/2004 15:40:54
Re : Registre ert vb - help me!!! 0 31/07/2004 15:23:51
Registre ert vb - help me!!! 3 31/07/2004 02:32:08
Re : help me! comparer des fichier avec une base de donnée 0 30/07/2004 16:42:33
help me! comparer des fichier avec une base de donnée 2 30/07/2004 14:37:43
Re : comment faire une barre en haut (Fichier, édition, ?....) 0 25/07/2004 16:22:18
Re : comment faire une barre en haut (Fichier, édition, ?....) 0 25/07/2004 16:14:40
Re : comment faire une barre en haut (Fichier, édition, ?....) 0 25/07/2004 16:06:28
Re : comment faire une barre en haut (Fichier, édition, ?....) 0 25/07/2004 16:04:52
comment faire une barre en haut (Fichier, édition, ?....) 8 25/07/2004 15:31:27
scanner tout les fichier du disque dur et les comparer avec une base de données 0 24/07/2004 16:18:48
Re : Comment ouvrir une Form à partir d'un bouton? 0 24/07/2004 15:23:04
Re : Comment ouvrir une Form à partir d'un bouton? 0 23/07/2004 17:30:04
scusez-moi mais le chat FAIT DUR! 2 23/07/2004 16:43:55
Comment ouvrir une Form à partir d'un bouton?