Bei empfangenem String Computer Herunterfahren

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag 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.
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag 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   
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

lass es fallen und back erstmal kleine brötchen...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag 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.
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag 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
a²+b²=mc²
Benutzeravatar
Alves
Beiträge: 1208
Registriert: 19.04.2006 18:24
Kontaktdaten:

Beitrag von Alves »

Der Code gibt einen Invalid Memory Access aus...
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag 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.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag 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
Benutzeravatar
Alves
Beiträge: 1208
Registriert: 19.04.2006 18:24
Kontaktdaten:

Beitrag von Alves »

:roll:

Das war ein Scherz zu KGs Code. Invalid Memory Access ist halt ein Speicherzugriff, der nicht gültig ist.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag 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...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten