Boost TCP Socket

01/22/2015 20:09 Lee Ki-Hwan#1
Tagchen Coder,
ich habe folgendes Problem,
undzwar benutze ich ein Programm was die Boost Library benutzt und ich hab ehrlich gesagt vorher nie mit Boost gearbeitet daher bin ich jetzt ein wenig verwirrt.

Mein Programm (ein GameServer) wirft eine Exception beim erstellen einer Listen Session (TCP).

Was allerdings lustig ist, ist das es unter meinem Windows 8 nicht geht aber auf einem anderen Computer mit Windows 7 klappt es, dann wollte ich mich vergewissern und habe es auf der Arbeit mit einem Windows 7 getestet und dort ging es auch, also bin ich jetzt total ratlos woran es liegen könnte.

Der Code sieht folgendermaßen aus:
Code:
 
	std::ostringstream oss;
	oss << port;

	std::string port_string = oss.str();

	boost::asio::ip::tcp::resolver resolver( io_service_ );

	boost::asio::ip::tcp::resolver::query query( host, port_string );
	boost::asio::ip::tcp::endpoint endpoint = *resolver.resolve(query); // Hier wird die Exception geworfen
Ich hab gegoogelt, allerdings weiss ich nichtmal richtig wie ich es angehen soll, da es wahrscheinlich Platform abhängig ist.

Bin für jeden Rat sehr dankbar! :)

Edit: Eins hab ich vergessen,
bei dieser Funktion müsste es scheitern:
Code:
   iterator resolve(const query& q)
  {
    boost::system::error_code ec;
    iterator i = this->service.resolve(this->implementation, q, ec);
    boost::asio::detail::throw_error(ec, "resolve");
    return i;
  }
Kann ja auch gut möglich sein, dass er nicht Binden kann, aber die anderen Server tuns ja auch ohne Probleme.
01/23/2015 19:23 Padmak#2
Was spricht dagegen, die Exception aufzufangen und auszugeben?
Da steht sicher mehr drin, als wir dir so sagen können, ohne weitere Informationen zu haben

Padmak
01/23/2015 20:51 Lee Ki-Hwan#3
Quote:
Originally Posted by Padmak View Post
Was spricht dagegen, die Exception aufzufangen und auszugeben?
Da steht sicher mehr drin, als wir dir so sagen können, ohne weitere Informationen zu haben

Padmak
Danke, aber hab vergessen Topic updzudaten xd
Ist schon geklärt, das ist auf mein Laptop halt so wegen dem OS, ich kann nacher aber trotzdem mal gucken wie die Exception aussieht.
01/23/2015 21:49 Padmak#4
"ist [...] halt so wegen dem OS" klingt nicht nach einer richtigen Lösung.
Funktioniert es nur unter Windows 8(.1) nicht, oder hast du noch andere Sachen gefunden?
Und bitte vergrößer deinen Code-Ausschnitt etwas, das hilft so gar nichts
Außerdem ist ist dein Code gar kein listener, sondern ein Client, der sich gerne irgendwohin verbinden möchte, oder nicht?

Padmak