Serverproblem

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

Hast du die Internet IP verwendet oder deine Lokale? Du musst mit ner Funktion (siehe unten) die Internet IP ermitteln sonst is nix.

Gruß
Scarabol

Code: Alles auswählen

Procedure.s GetInternetIP()
  isLoop.b = 1
  Buffer.s = Space(2048)
 
  hInet.l = InternetOpen_("PB@INET", OpenType, #Null, #Null, 0)
  hURL.l = InternetOpenUrl_(hInet, "http://www.wieistmeineip.de/", #Null, 0, $80000000, 0)
 
  Repeat
    Delay(1)
    InternetReadFile_(hURL, @Buffer, Len(Buffer), @Bytes)
    If Bytes.l = 0
      isLoop=0
    Else
      Html$ = Html$ + Left(Buffer, Bytes)
    EndIf
  Until isLoop=0
  InternetCloseHandle_(hURL)
  InternetCloseHandle_(hInet)
 
  If FindString(Html$, "<h1 class="+Chr(34)+"ip"+Chr(34)+">", 0)
    ProcedureReturn Left(Mid(Html$, FindString(Html$, "<h1 class="+Chr(34)+"ip"+Chr(34)+">", 0)+Len("<h1 class="+Chr(34)+"ip"+Chr(34)+">"), 15), FindString(Mid(Html$, FindString(Html$, "<h1 class="+Chr(34)+"ip"+Chr(34)+">", 0)+Len("<h1 class="+Chr(34)+"ip"+Chr(34)+">"), 15), "<", 0)-1)
  Else
    ProcedureReturn ""
  EndIf
EndProcedure 

SetGadgetText(IPAdresseServerGadget2, GetInternetIP())
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Benutzeravatar
unix
Beiträge: 361
Registriert: 15.02.2005 19:25
Wohnort: Zwischen Coburg und Bamberg :-)
Kontaktdaten:

Beitrag von unix »

ohh mann anfänger bin ich nicht hab zum probieren www.meineip.de verwendet und manuell eingegeben aber trotzdem danke für den Code kann man immer brauchen

also das ist es nicht
Hier steht normalerweise die Putzfrau drin,
die hat aber Urlaub.
MfG : Unix
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

Ist doch egal ob es falsch war, aber es geht doch erstmal nur darum das die einfachen Dinge funktionieren, dann kann man mit komplizierteren Sachen anfangen, das hilft ja wohl mehr weiter als irgendwelche Erklärungen die sowieso keiner im ANFÄNGER Forum versteht.
Genau das seh ich anders.... Nachher meinen einige wirklich, man müsse 127.0.0.1 verwenden. Ich wollte es nur richtig gestellt und hier nicht auf Fehler Anderer hinweisen. Auserdem, was ist daran schon so schwer, seine lokale IP heraus zu finden? Und wie möchte dann ein Anfänger, wenn er nur 127.0.0.1 kennt, einen Rechner mit einem anderen im Netz verbinden?
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Wenn der Port bei mir nicht Freigeschaltet ist, hält sich bei mir der PC ca. 1 Min. bei dem Herstellen der Verbindung auf und gibt dann aber 1 Zurück guck mal ob das bei dir auch so ist.

Zum Connecten bitte das hier nehmen, es kann ja sein das dein Freund gerade nicht den PC an hat:

Code: Alles auswählen

Repeat 
  ConnectionID = OpenNetworkConnection("127.0.0.6", Port) 
If ConnectionID 
EndIf 
Delay(10) 
Until ConnectionID <> 0 
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

@unix

das fällt mir jetzt erst auf, warum möchtest Du deine lokale IP über www.meineip.de erfahren? Da wird nur die Internet IP angezeigt. Innerhalb eines internen Netzes kannst Du dann schonmal keine Verbindung herstellen. Seine lokale IP findest man, wenn man ein Commandfenster öffnest (cmd ausführt und dort ipconfig eingibt (unter windows)). Wenn Du über DFÜ online gehst, findest dort auch die Internet-IP.
Benutzeravatar
unix
Beiträge: 361
Registriert: 15.02.2005 19:25
Wohnort: Zwischen Coburg und Bamberg :-)
Kontaktdaten:

Beitrag von unix »

also nochma von Vorn

Code: Alles auswählen

Mein PC
  |
  |
  |
Internet------Ein anderer PC
  |
  |
  |
noch ein anderer PC

So und alle 'anderen PC´s' sollen zu 'Mein PC' connecten können über internet nicht lokales Netzwerk ein bisschen ahnung hab ich, meine Ports sind frei!

[EDIT]

ach mann Rob sag denen doch mal bitte was ich mein ich verzweifle bald
entweder hab ich doch den falschen Port ausversehen freigeschaltet oder es müssen beide PC´s den Port freischalten ich probier einfach ein wenig
Hier steht normalerweise die Putzfrau drin,
die hat aber Urlaub.
MfG : Unix
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

Also hmmm.... ok Du hast e bissl Plan... dann versteh ich nicht, daß Du über einen Port, der Standardmäßig belegt ist, eine Verbindung aufbauen willst (aber ok, der muß bei dir ja nicht unbedingt belegt sein). Aber was ich noch weniger verstehe, warum willst Du eine Verbindung über Internet aufbauen, wenn Server und Client auf dem gleichen Rechner laufen? Oder hat das nun jeder hier falsch verstanden, denn fast alle Antworten nehmen darauf bezug.
Benutzeravatar
unix
Beiträge: 361
Registriert: 15.02.2005 19:25
Wohnort: Zwischen Coburg und Bamberg :-)
Kontaktdaten:

Beitrag von unix »

laufen ja eben nicht auf gleichen rechner deshalb muss ich ja jedesmal wenn ich probieren will den Client einen Kumpel von mit geben und das mit den Port hmm da nehm ich halt nen andern ich dachte das muss ein internet Port sein also 80 oder 8080 hmm dann nehmm ich halt einfach mal TCP: 5066
Hier steht normalerweise die Putzfrau drin,
die hat aber Urlaub.
MfG : Unix
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Beitrag von a14xerus »

ich bin auch lange an den netzwerksachen verzweifelt, es liegt wirklich nur an den ports.
und sehr wahscheinlich am router,
ich war dabei einen Multiplayer zustricken, und habe mir dann ein test programm geschrieben, server lief bei mir, client wurde an mehrere verteilt, lief bei 100% von den benutzern ohne router, und bei ca50% von den benutzern mit router ohne probleme. (port 6028)
Also ich tippe auf Router problem

//edit: @ Port 8080: http & mil.http
Zuletzt geändert von a14xerus am 02.01.2007 21:32, insgesamt 1-mal geändert.
Benutzeravatar
unix
Beiträge: 361
Registriert: 15.02.2005 19:25
Wohnort: Zwischen Coburg und Bamberg :-)
Kontaktdaten:

Beitrag von unix »

vl. ist es was anderes habe gerade einen mein Programm gegeben firewall aus Port 5066 beide freigegeben kein connect
Server lief bei mir auch
Hier steht normalerweise die Putzfrau drin,
die hat aber Urlaub.
MfG : Unix
Antworten