Beispeil für Chat Programm gesucht. (wie ICQ)

Du brauchst Grafiken, gute Programme oder Leute die dir helfen? Frag hier.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

aber das empfangen klappt noch nicht! Hab ich hier igrnetwas falsch programmiert?

Server:

Code: Alles auswählen

Port = 6832

If InitNetwork() = 0
  MessageBox_(Win,"Netzwerk Umgebung kann nicht vorbreitet werden!"+Chr(13)+"Ist dein Computer Internet Tauglich?","Warnung",#MB_OK | #MB_ICONERROR)
  End
EndIf



;-------------Endlosschleife, bis was passiert-----------------------

If CreateNetworkServer(4, Port , #PB_Network_TCP)




Repeat
      
    SEvent = NetworkServerEvent()
  
    If SEvent
    
      ClientID = EventClient()
  
      Select SEvent
      
      ;-------------case 1,2,3,4---------------------------------------
      
      
      
        Case 1
          MessageRequester("Server", "Ein neuer Client meldet sich!", 0)
  
  
        Case 2
         MessageRequester("Server", "Daten oder Strings wurden gesendet", 0)


       Case 3
       DateiName$ = SaveFileRequester("Bitte Datei zum Speichern auswählen", StandardFile$, Pattern$, Pattern)
       If DateiName$

       
       
       
       
       ReceiveNetworkFile(ClientID, DateiName$)
       
       EndIf 
      
       Case 4
       MessageRequester("Server", "Die verbindung zum Client wurde getrennt!", 0)
       
       
       
       
       
       

       
       
       
       
       
EndSelect
    EndIf
    
  Until Quit = 1 
  
  MessageRequester("PureBasic - Server", "Click to quit the server.", 0)
  
  CloseNetworkServer(0)
Else
  MessageRequester("Error", "Can't create the server (port in use ?).", 0)
EndIf

  
End   
Client:

Code: Alles auswählen

If InitNetwork() = 0
  MessageRequester("Error", "Can't initialize the network !", 0)
  End
EndIf



Port = 7657
CreateNetworkServer(1, Port , #PB_Network_TCP)
If OpenWindow(8, 200, 200, 400, 300, "Intel IP 1.0", #PB_Window_SystemMenu, 0)
 If CreateGadgetList(WindowID(8))
 
 
 
 ;ConnectionID=OpenNetworkConnection(Hostname(),Port,#PB_Network_TCP)
  ConnectionID=OpenNetworkConnection("84.174.218.119", Port,#PB_Network_TCP)
If ConnectionID
  ;MessageRequester("PureBasic - Client", "Client connected To server...", 0)
  ;datei$ = OpenFileRequester("wäle die datei", "", "alles|*.*|All Files|*.*", 0)
  ;If datei$
  ;ProgressBarGadget(8, 10, 10, 70, 10, 0, 80 , #PB_ProgressBar_Smooth)
  ;FileSize(datei$)
;a$ = "C:\jo.txt"
  ;SetGadgetState(8,10)
  ;Delay(99999)
  ;CopyMemory(C:\JO.txt, *bufferread, 128)

  ;SendNetworkData(ConnectionID, *bufferread, 128)
  ;SendNetworkString(ConnectionID, "An hello from a client !!! :-)")
    
    
   DateiName$ = OpenFileRequester("Bitte Datei zum Laden auswählen", StandardFile$, Pattern$, Pattern)
  If DateiName$
 
;DateiName$ = OpenFileRequester("test", "C.\", *.*, 0 , 0) 
SendNetworkFile(ConnectionID, DateiName$)
  ;MessageRequester("PureBasic - Client", "A string has been sent to the server, please check it before quit...", 0)
  
  ;CloseNetworkConnection(ConnectionID)
Else
  MessageRequester("PureBasic - Client", "Can't find the server (Is it launched ?).", 0)
EndIf
  EndIf 
  EndIf 
  EndIf 
End   
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

So, es geht!

Man kann übrigens die verbindung über die IP des Routers aufbauen, die wenn mans so einstellt immer gleicht ist! :D
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

So jetzt muss ich nurnoch die die oberfläche für das Chatprogramm machen! Das ist Arbeit! So mit gadget und so, schade dass es da nicht schon ne vorlage gibt weil ich nicht weiß wie ich da anfangen soll!
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

gibt es ein programm hier irgentwo im Forum zum Daten verschicken also eins zum empfangen und eins zum senden. Beim Server gibt man die Ip-Adresse vom client ein (portforwardinhg hab ich bis dahinb eingestellt) Wält ne Datei aus und beim client kann man auswählen wo das gespeichert werden soll.....

Gibt es das irgentwo? Dann brauch ich das nicht wieder zu programmiren.
Antworten