t0day
Grünschnabel
Moin,
aktuell versuche ich Boost.Asio als Netzwerkschnittstelle zu verwenden. Allerdings gelingt mir das nicht.
Aktueller Code:
Da gibt mir VS 10 dann einen netten Error zurück (für jede der drei Funktionen (net_resolve, net_handleConnect, net_read):
Gemacht getan. Aber jetzt bekomme ich einen mir unverständlichen Error:
Wenn ich allerdings die net_* (außer net_connect) als Nicht-Klassenmember benutze geht alles, allerdings kann net_read dann nicht in der Klasse weiter verarbeitet werden.
Hat da irgendjemand einen Vorschlag wie sich das Lösen lässt?
t0day
aktuell versuche ich Boost.Asio als Netzwerkschnittstelle zu verwenden. Allerdings gelingt mir das nicht.
Aktueller Code:
Code:
CIcd::CIcd()
{
sock = new boost::asio::ip::tcp::socket(this->io_service);
resolver = new boost::asio::ip::tcp::resolver(this->io_service);
}
void CIcd::net_connect(std::string server, unsigned int port)
{
boost::asio::ip::tcp::resolver::query query("localhost", "1234");
resolver->async_resolve(query, net_resolve);
io_service.run();
}
Da gibt mir VS 10 dann einen netten Error zurück (für jede der drei Funktionen (net_resolve, net_handleConnect, net_read):
error C3867: "CIcd::resolve_handler": Dem Funktionsaufruf fehlt die Argumentliste. Verwenden Sie "&Cicd::resolve_handler", um einen Zeiger auf den Member zu erstellen.
Gemacht getan. Aber jetzt bekomme ich einen mir unverständlichen Error:
boost\asio\impl\write.hpp(45): error C2228: Links von ".write_some" muss sich eine Klasse/Struktur/Union befinden.
Wenn ich allerdings die net_* (außer net_connect) als Nicht-Klassenmember benutze geht alles, allerdings kann net_read dann nicht in der Klasse weiter verarbeitet werden.
Hat da irgendjemand einen Vorschlag wie sich das Lösen lässt?
t0day