HyperCryptChat

Programmation d'applications complexes
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

HyperCryptChat

Message par SPH »

Salut, 8)

je carrosse un client et un serveur de venom.
Je m'amuse beaucoup. Le password est a laisser tel quel. Choisissez CLIENT et entrez mon ip :
Mon IP : 92.147.97.147 (pour ce jour)
Le serveur est en train de tourner chez moi la.
Je ne sais pas si ca va marcher alors : essayons (le plus pratique serait de se retrouver sur discord...)

Le code : voir le post suivant
Dernière modification par SPH le mer. 28/août/2019 12:25, modifié 2 fois.
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Avatar de l’utilisateur
Kwai chang caine
Messages : 6962
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: HyperCryptChat

Message par Kwai chang caine »

J'avais 10 secondes à te consacrer...
HyperCryptChat - Beta 1
SPH(c)2019

Réseau connecté...
Impossible de se connecter au serveur !
Pas de chance !!! :|
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

Re: HyperCryptChat

Message par SPH »

Kwai chang caine a écrit :J'avais 10 secondes à te consacrer...
HyperCryptChat - Beta 1
SPH(c)2019

Réseau connecté...
Impossible de se connecter au serveur !
Pas de chance !!! :|
Bon, ca commence mal. Tu as bien mis mon IP ?

(j'ai jamais reussi a faire du reseau... pfff :cry: )
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Marc56
Messages : 2146
Inscription : sam. 08/févr./2014 15:19

Re: HyperCryptChat

Message par Marc56 »

Tu as pensé à faire la translation d'adresse et port sur ta box ?
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

Re: HyperCryptChat

Message par SPH »

Marc56 a écrit :Tu as pensé à faire la translation d'adresse et port sur ta box ?
Apparement, pas besoin car en executant le pb serveur et le pb client de venom, ca marche (avec mon ip 127.0.0.1)

.....humm, je dis peut etre une betise remarque car en interne (127.0.0.1), ca marche mais ca ne veux pas dire que par internet, ca marchera aussi.

Bon, j'ai une idee que je développerais demain :!:


PS : mon ip a changé (curieux, g pas eu de deco)
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

Re: HyperCryptChat

Message par SPH »

Refaisons une tentative : allez dans l'onglet CLIENT et essayez de vous connecter a mon IP indiqué dans le code.
Si vous voyez "Connecté au serveur !", ce sera une reussite. :P
Merci pour vos retours... 8)

Code : Tout sélectionner

Enumeration
  #Window_0
EndEnumeration

;- gadgets Constants
Enumeration
  #Server_01
  #Editor_01
  #String_01
  #Button_01
  #Server_02
  #Editor_02
  #String_02
  #Button_02
  
  #s0
  #s1
  #s2
  #s3
  #s4
  #s5
  #s6
  #s7
  #s8
  
  #s14
  #s15
  #s16
  #s17
  #s18
  #s19
  #s20  
  
  #s30  
  #s31  
  #s32  

  #s40  
  #s41  
  #s42  

  #s100  
  #s101  
EndEnumeration


;;;;;;;;;;;;;;;;;;;;;

OpenWindow(0, 0, 0, 780, 575, "HyperCryptChat", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)

; Image.i = CatchImage(#PB_Any, ?titre2_bmp_start)
; ImageGadget(#s0, 10, 10, 760, 53, ImageID(image.i))                      ; imagegadget standard

PanelGadget (#s1, 12, 80, 756, 480)

AddGadgetItem (#s1, -1, "Password")
TextGadget(#s2, 20, 200,90,20,"Password :")
StringGadget(#s3, 80,  196, 650, 20, "...")


AddGadgetItem (#s1, -1, "Serveur")
TextGadget(#s4, 20, 30,90,20,"Pseudo :")
StringGadget(#s5, 70,  26, 210, 20, "Alpha")
pseudo$=GetGadgetText(#s5)
TextGadget(#s6, 20, 60,70,20,"Port :")
StringGadget(#s7, 52, 56, 40, 20, "6842")


EditorGadget(#s100, 20, 130, 260, 100, #PB_Editor_ReadOnly|#PB_Editor_WordWrap) 
AddGadgetItem(#s100, -1, "HyperCryptChat - Beta 2")
AddGadgetItem(#s100, -1, "SPH(c)2019")
AddGadgetItem(#s100, -1, " ")
SendMessage_(GadgetID(#s100), #EM_SETSEL, -1, 0)

ButtonGadget(#s8, 20,250,260,20, "Démarrer")

;    AddGadgetItem (1, -1, "Chat")
   EditorGadget(#s30, 300, 10, 420, 405, #PB_Editor_ReadOnly)
   StringGadget(#s31, 300, 425, 340, 20, "")
   ButtonGadget(#s32, 650, 425, 80, 20, "Envoyer")


   
 ; ##################################################################################################  
   
   
   
AddGadgetItem (#s1, -1, "Client")
TextGadget(#s14, 20, 30,90,20,"Pseudo :")
StringGadget(#s15, 70,  26, 210, 20, "Charlie")
pseudo$=GetGadgetText(#s15)
TextGadget(#s16, 20, 60,70,20,"Port :")
StringGadget(#s17, 52, 56, 40, 20, "6842")
TextGadget(#s18, 20, 90,100,20,"Adresse IP :")
IPAddressGadget(#s19, 86,86, 110, 20)
SetGadgetState(#s19, MakeIPAddress(92,147,97,147))   

EditorGadget(#s101, 20, 130, 260, 100, #PB_Editor_ReadOnly|#PB_Editor_WordWrap) 
AddGadgetItem(#s101, -1, "HyperCryptChat - Beta 2")
AddGadgetItem(#s101, -1, "SPH(c)2019")
AddGadgetItem(#s101, -1, " ")
SendMessage_(GadgetID(#s101), #EM_SETSEL, -1, 0)

ButtonGadget(#s20, 20,250,260,20, "Démarrer")

;    AddGadgetItem (1, -1, "Chat")
   EditorGadget(#s40, 300, 10, 420, 405, #PB_Editor_ReadOnly)
   StringGadget(#s41, 300, 425, 340, 20, "")
   ButtonGadget(#s42, 650, 425, 80, 20, "Envoyer")



;***************************************************************
;***************************************************************
;***************************************************************

Repeat
  Select WaitWindowEvent()
    Case #PB_Event_CloseWindow
      End
      
    Case #PB_Event_Gadget

        Select EventGadget()
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          Case #s8 ;demarrer serveur
            If InitNetwork() = 0
              net=0
              AddGadgetItem(#s100, -1, "Impossible d'initialiser le réseau !")
            Else
              AddGadgetItem(#s100, -1, "Réseau initialisé...")
              Gosub demarrer_serveur
              If net<>0
                Debug net
                Beep_(1500,500)
                ;Goto chat_serveur
              EndIf
            EndIf
            SendMessage_(GadgetID(#s100), #EM_SETSEL, -1, 0)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          Case #s20 ;demarrer client
            If InitNetwork() = 0
              net=0
              AddGadgetItem(#s101, -1, "Impossible d'initialiser le réseau !")
             Else
              AddGadgetItem(#s101, -1, "Réseau initialisé...")
              Gosub demarrer_client
              If net<>0
                Debug net
                Beep_(1500,500)
                ;Goto chat_client
              EndIf
            EndIf
            SendMessage_(GadgetID(#s101), #EM_SETSEL, -1, 0)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

        EndSelect     

  EndSelect
  
Until Evenement = #PB_Event_CloseWindow
End











demarrer_serveur:
Debug GetGadgetText(#s7)
*Buffer = AllocateMemory(1000)
If CreateNetworkServer(0, Val(GetGadgetText(#s7))) = 0
AddGadgetItem(#s100, -1, "Impossible de créer le serveur !")
SendMessage_(GadgetID(#s100), #EM_SETSEL, -1, 0)
Return
Else
  net=1
  Debug Val(GetGadgetText(#s7))
  AddGadgetItem(#s100,-1,"Serveur créé (Port : "+Val(GetGadgetText(#s7))+" TCP)")
  SendMessage_(GadgetID(#s100), #EM_SETSEL, -1, 0)
Return
EndIf




demarrer_client:
Debug Val(GetGadgetText(#s17))
Debug GetGadgetText(#s19)
*Buffer2 = AllocateMemory(1000)
ConnectionID = OpenNetworkConnection(GetGadgetText(#s19), Val(GetGadgetText(#s17)))
If ConnectionID = 0
AddGadgetItem(#s101, -1, "Impossible de se connecter au serveur !")
SendMessage_(GadgetID(#s101), #EM_SETSEL, -1, 0)
Return
Else
  net=2
  AddGadgetItem(#s101, -1, "Connecté au serveur !")
  SendMessage_(GadgetID(#s101), #EM_SETSEL, -1, 0)
Return  
EndIf 

Dernière modification par SPH le mer. 28/août/2019 12:23, modifié 4 fois.
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Marc56
Messages : 2146
Inscription : sam. 08/févr./2014 15:19

Re: HyperCryptChat

Message par Marc56 »

127.0.0.1 = interface réseau virtuelle (loopback) = fonctionne même sans carte

Ce n'est pas parce que ça fonctionne sur ton réseau local que ça fonctionnera sur l'internet.
Un réseau classe C n'est pas routable naturellement.

Tu peux faire toutes le bidouilles que tu veux en PB: un paquet réseau venant de l'internet n'entrera pas tout seul sur ton réseau sans translation d'adresse (cela se configure cela dans la box)

Une box fonctionne comme un clapet anti-retour: Un paquet ne peut entrer que s'il est une réponse à un paquet sortant. Pour pouvoir entrer seul, il faut que le routeur lui ouvre un passage. Ce qui n'est jamais la configuration par défaut, car c'est alors une faille si on ne contrôle pas bien la configuration de l'application serveur.

Oui, on peut accéder à une machine sans translater (pour la télémaintenance), pour cela on utilise un Repeater

:wink:
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

Re: HyperCryptChat

Message par SPH »

Ca y est, j'ai reussi a ouvrir mon port 6842 en TCP/UDP (j'ai mis les 2 car je ne savais pas choisir)

:mrgreen:

Pouvez vous tester mon 2eme code please ?
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Avatar de l’utilisateur
Ar-S
Messages : 9472
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: HyperCryptChat

Message par Ar-S »

Impossible de se connecter au serveur !
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
Kwai chang caine
Messages : 6962
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: HyperCryptChat

Message par Kwai chang caine »

Moi ce que je fais pour faire des tests avec ce genre de prg
Je laisse le pc principal sur le reseau normal internet via la box
Et je prends un second pc que je connecte en wifi sur mon téléphone configuré en modem
Comme ça, j'ai deux vraies IP WAN (internet) et je peux tester les premiers balbutiements sans avoir besoin de personne :idea:
Une fois que ça marche comme ça, je teste à distance avec une autre personne :wink:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

Re: HyperCryptChat

Message par SPH »

Bon, avec Gally, on a reussi a faire fonctionner le reseau. Ca a marché une fois (au moins, ca a marché) 8)
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Avatar de l’utilisateur
venom
Messages : 3071
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: HyperCryptChat

Message par venom »

Si tu ouvre les bons port sur ta box, il n'y a pas de raison que ça ne fonctionne pas.
Ps: pour du tchat privilégie le TCP :wink:






@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
SPH
Messages : 4722
Inscription : mer. 09/nov./2005 9:53

Re: HyperCryptChat

Message par SPH »

venom a écrit :Si tu ouvre les bons port sur ta box, il n'y a pas de raison que ça ne fonctionne pas.
Ps: pour du tchat privilégie le TCP :wink:
DACODAC :P :mrgreen:
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Répondre