Seite 6 von 12

Verfasst: 16.05.2006 14:39
von PBZecke
Joel hat geschrieben:... Jeder von euch der Zeit hat kann ja mal versuchen soetwas zu programmieren. ...).
Ich glaube nicht, dass Dir jemand hier eine fertige Lösung hinstellen wird. :cry:
Aber Du schreibst selber, dass Du blutiger Anfänger bist. Fang doch eher mit
was einfacherem an, dann brauchst Du nicht nach fertigen codes fragen, die
Du dann eh nicht verstehen wirst. Netzwerkkommunikation ist nicht unbedingt
etwas, was man als erstes in Angriff nimmt.

Verfasst: 19.07.2006 13:10
von Joel
Da gibt es so ein problem mit SendNetworkFile, Hab alles soweit programmiert aber wenn ich eine Datei an den ClientID versenden will klappt dass nicht. Es wird angezeigt ConnectionID is null aber dass soll ja auch der ClientID (ClientID = EventClient()) sein.

Das hat bissher auch alles geklappt aber jetzt aufeinmal nicht mehr, nachdem ich den Code noch etwas umgeendet habe.

Server:

Code: Alles auswählen

Procedure Fenster_1() 
 
If  OpenWindow(0, 50, 100, 300, 500, "Server zum Herunterfaheren" , #PB_Window_SystemMenu , 0)
If CreateGadgetList(WindowID(0))
ButtonGadget(1, 10, 15, 100, 30, "Herunterfahren")
ButtonGadget(2, 10, 45, 100, 30, "Neu Starten")
EndIf 
 
;Repeat
;If 1<> 1
;MessageRequester("Error", "Can't initialize movie playback !", 0) 
;EndIf 
;ForEver 
Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow 
      Quit = 1
    EndIf
    If EventID = #PB_Event_Gadget
      If EventGadget() = 1
        SendNetworkFile(ClientID, "C:\jo.txt")
        End 
      EndIf
      If EventGadget() = 2
        ;Fenster_Neustart()
      EndIf
     EndIf
  Until Quit=1

EndIf 
   
EndProcedure 

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

Port = 6832
Buffer = AllocateMemory(100000)

If CreateNetworkServer(0, Port)

  ;MessageRequester("PureBasic - Server", "Server created (Port "+Str(Port)+").", 0)
  
  Repeat
     SEvent = NetworkServerEvent()
  
    If SEvent
    
      ClientID = EventClient()
     
      Select SEvent
      
        Case 1
        If Fenster_1()
              Endif   
    EndSelect 
    EndIf 
    
       Until Quit = 1 
        
         EndIf 
         End  
         
Client:

Code: Alles auswählen

;
; ------------------------------------------------------------
;
;   PureBasic - Network (Client) example file
;
;    (c) 2003 - Fantaisie Software
;
; ------------------------------------------------------------
;

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

Port = 6832
  Repeat
  ConnectionID = OpenNetworkConnection("joel2.dyndns.org", Port)
If ConnectionID
EndIf 
Delay(10)
Until ConnectionID <> 0
Repeat 

    ServerID = EventServer() 
    
    Select ServerID
  
      
      Case 3
      
       MessageRequester("Error", "Can't initialize movie playback !", 0)
  ;ExitWindowsEx_(#EWX_POWEROFF,0)
  EndSelect
  
  Until Quiet = 1
  
  CloseNetworkConnection(ConnectionID)

End   

Verfasst: 19.07.2006 13:19
von Kaeru Gaman
lass es fallen und back erstmal kleine brötchen...

Verfasst: 19.07.2006 13:24
von Joel
Hab dazu gelernt hab das Ganze Tutorails mir nochma anzeguckt konnte zum Beispiel fast alle schleifen, Prozedure nicht mehr usw.

DYN-DNS, Portforwarding usw. hab ich alles eingestellt.

Verfasst: 19.07.2006 14:03
von Kiffi
> Hab dazu gelernt

lieber Joel, regelmässig trittst Du hier Mega-Threads los, die über mehrere Seiten
gehen. Mittlerweile sind wahrscheinlich alle guten PureBoard-Geister am Ende
ihrer Kräfte, denn ein typischer Joel-Thread sieht wie folgt aus:

Code: Alles auswählen

JoelHatDaMalEineFrage:
JoelPostetCode
JoelSchreibt_DerCodeFunztIrgendwieNicht
For Antwort = 1 to Random(5) + 1
 AntwortenWerdenGegeben
Next
JoelÄndertIrgendeineZeileSeinesCodes
Goto JoelHatDaMalEineFrage
Der ein oder andere hat halt keinen Bock mehr, Mühe und Zeit zu
investieren, wenn Du nicht willens bist, auch mal selber ein wenig
nachzudenken oder zu erkennen, dass die Aufgaben, die Du Dir stellst
noch ein wenig zu groß für Dich sind.

Es ist nicht unsere Aufgabe, Dir das Programmieren beizubringen. Das
musst Du schon in Eigenleistung erbringen.

Grüße ... Kiffi

Verfasst: 19.07.2006 14:12
von Alves
Der Code gibt einen Invalid Memory Access aus...

Verfasst: 19.07.2006 14:15
von Joel
Ich hab lange genug versucht das problem zu lösen. Hab ja fast das Programm fertig, aber nur fast. Zum Beispiel hatte ich ja auch ein Dll Problem und hab auch irgentwann herausgefunden dass ich keinen Haken bei "Unicode Executabe" machen durfte, aber dass hier konnte ich einfach nicht lösen.

Verfasst: 19.07.2006 14:19
von Joel
Was meinst du mit Invalid Memory Access hab schonmal was davon gehört kann mir aber nicht richtiges trunter vorstellen. In der Hilfe stand leider auch nichts :D

Verfasst: 19.07.2006 15:03
von Alves
:roll:

Das war ein Scherz zu KGs Code. Invalid Memory Access ist halt ein Speicherzugriff, der nicht gültig ist.

Verfasst: 19.07.2006 15:05
von Kaeru Gaman
der Gagcode war von Kiffi...

ich hab allerdings deinen Scherz auch nich glei darauf bezogen...


witzig allerdings, das Joel gar nicht gemerkt hat, dass nicht sein code gemeint war...

ich kann nur wiederholen:

back erstmal kleine brötchen...