Page 1 sur 1

message network

Publié : jeu. 08/déc./2005 12:00
par gadjet35
sa y es j'ai réussi ! :D
j'ai créer deux prog sur différent PC, avec les prog ces PC pouront s'envoyer des messages :
sur le pc serveur :

Code : Tout sélectionner

;- Window Constants
;
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
  #Button_0
  #Button_1
  #String_0
  #String_1
EndEnumeration

InitNetwork()

text = AllocateMemory(1000)
text_env = AllocateMemory(1000)

Procedure Open_Window_0()
  If OpenWindow(#Window_0, 134, 162, 600, 300,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Message")
    If CreateGadgetList(WindowID())
      ButtonGadget(#Button_0, 100, 240, 110, 40, "Envoyer")
      ButtonGadget(#Button_1, 370, 240, 110, 40, "Quitter le serveur")
      StringGadget(#String_0, 10, 10, 580, 100, "", #PB_String_ReadOnly|#PB_String_MultiLine)
      StringGadget(#String_1, 10, 130, 580, 100, "", #PB_String_MultiLine)
    EndIf
  EndIf
EndProcedure

open_window_0()
CreateNetworkServer(6500)
Repeat
 Select NetworkServerEvent()
  Case 1
   MessageRequester("serveur","un nouveau client c'est connecter")
   a = 1
  Case 2
   ReceiveNetworkData(NetworkClientID(),text,1)
   SetGadgetText(#String_0,GetGadgetText(#String_0)+Chr(10)+Chr(13)+PeekS(text))
  Case 4
   MessageRequester("serveur","un client c'est deconnecter")
   a = 2
 EndSelect
 If a = 1
  Select EventGadgetID()
   Case #button_0
    PokeS(text_env,GetGadgetText(#String_1))
    SendNetworkData(NetworkClientID(),text_env,1000) 
   Case #button_1
    CloseNetworkServer()
  EndSelect
 EndIf
Until WaitWindowEvent()=#PB_EventCloseWindow
sur le pc client :

Code : Tout sélectionner

;- Window Constants
;
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
  #String_0
  #String_1
  #Button_0
  #Button_1
EndEnumeration

InitNetwork()

text = AllocateMemory(1000)
text_env = AllocateMemory(1000)

Procedure Open_Window_0()
  If OpenWindow(#Window_0, 233, 92, 608, 370,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Message")
    If CreateGadgetList(WindowID())
      StringGadget(#String_0, 10, 20, 590, 170, "", #PB_String_ReadOnly|#PB_String_MultiLine)
      StringGadget(#String_1, 10, 210, 590, 100, "",#PB_String_MultiLine)
      ButtonGadget(#Button_0, 130, 320, 100, 40, "Envoyer")
      ButtonGadget(#Button_1, 380, 320, 100, 40, "Se déconecter")
    EndIf
  EndIf
EndProcedure

open_window_0()
IP = "ip du pc serveur"
connect = OpenNetworkConnection(,6500) 
Repeat
 Select NetworkClientEvent(connect)
  Case 2
   ReceiveNetworkData(connect,text,1)
   SetGadgetText(#String_0,GetGadgetText(#String_0)+PeekS(text))
 EndSelect
 Select EventGadgetID()
  Case #button_0
   PokeS(text_env,GetGadgetText(#String_1))
   SendNetworkData(connect,text_env,1000)
  Case #button_1
   CloseNetworkConnection(connect)
 EndSelect
Until WaitWindowEvent()=#PB_EventCloseWindow
amusez vous bien !!! :D

Publié : jeu. 08/déc./2005 14:08
par gadjet35
et comment les trouvez-vous ? 8O

Publié : jeu. 08/déc./2005 18:31
par CameleonTH
Mais c génial, non je déconne car je trouve sa un peu simpliste méme trop car nous (les autres :D) nous savons faire mieux ou auttant (par exemple moi j'ai fais un trojan que je ne divulgue pa et que je n'utilise pas) et puis pour envoyer des messages il suffit de faire netsend ou winpopup ou mieu encore MSN Messenger.

Conclusion : C'est pas la peine de mettre un nouveau post a chaque fois que tu découvre un truc qui est plus ou moins dans l'aide de Purebasic.

DSL si je suis sec mais j'ai oublier la vaseline :D

Publié : jeu. 08/déc./2005 18:59
par AWEAR
Je ne sais pas si tu as vu mais en plus il n'est pas fini ton server..

Publié : jeu. 08/déc./2005 20:52
par venom
bonsoir.

moi aussi je suis en train de faire un t'chat mais seulement pour reseau local .

sa se presente comme une fenetre de t'chat, mais il faut pas internet. ce programme a pour but de pouvoir parler a plusieurs en meme temps sur un reseau local :) .

voici une demo mais il me manque tout ce qui touche network.

Code : Tout sélectionner

;- Window Constants
Enumeration
  #Window_0

EndEnumeration

;- Gadget Constants
Enumeration
  #Listview_0
  #Listview_1
  #String_0
  #Button_0
  #Button_1
  #textepseudo
EndEnumeration

Textes$ = Chr(0)
pseudo$ =  InputRequester("pseudo", "choisissez un pseudo",pseudo$)
 space$ = Space(3)
  
  If OpenWindow(#Window_0, 216, 0, 800, 600,  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "purechat reseau")

      If CreateGadgetList(WindowID())
        ListViewGadget(#Listview_0, 15, 20, 590, 495,#ES_AUTOVSCROLL|#WS_VSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT)
        ListViewGadget(#Listview_1, 617, 20, 173, 495)
        AddGadgetItem (#Listview_1,-1,""+ pseudo$)
        StringGadget(#String_0, 15, 525, 590, 50, texte$,#PB_String_MultiLine|#ES_AUTOVSCROLL|#WS_VSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT)
        ButtonGadget(#Button_0, 620, 525, 170, 50, "envoyer")
        ButtonGadget(#Button_1, 15, 3, 170, 15, "nettoyer la fenetre")
        TextGadget(#textepseudo, 15, 578,800,20,"connecter en tant que :  "+ pseudo$)
     
      EndIf
    EndIf

   Repeat 
   Event = WaitWindowEvent() 
    If Event = #PB_EventGadget 
     Select EventGadgetID()
     
         Case #String_0
         texte$ =  GetGadgetText(#String_0)
          
         Case #Button_0
          AddGadgetItem(#Listview_0, -1, Chr(139)+pseudo$+Chr(155)+space$+(texte$))
           SetGadgetText(#String_0, Textes$)

         Case #Button_1
          ClearGadgetItemList(#Listview_0)

          
     EndSelect 
    EndIf
  Until Event = #PB_EventCloseWindow
dites moi si c'est un bon debu ou pas. :)


@++

Publié : jeu. 08/déc./2005 22:13
par Droopy
Il a posté dans la rubrique débutant, et je pense qu'il réclame des critiques constructives .

Publié : jeu. 08/déc./2005 23:12
par Chris
Ben oui, mais là, il n'y a pas grand chose à juger.
Faudrait un minimum de fonctionnalités réseau pour commencer à pouvoir en dire quelque chose.

Publié : ven. 09/déc./2005 13:40
par gadjet35
mais chez lui j'aime bien comme sa ce présente !
:D