Estoy a punto de desarrollar algunas tomas de cosas relacionadas en C++ y me gustaría que el software sea tan portátil entre Windows y Linux como sea posible desde el principio (lo que es más portátil es difícil.)Winsock 2 portabilidad
He visto diferentes bibliotecas, hay una para C++ desde alhem.net y, por supuesto, hay boost :: asio. boost :: asio parece muy prometedor pero sería una gran dependencia para aplicaciones tan pequeñas.
¿Vale la pena escribir las cosas yo solo o debería simplemente usar una biblioteca? Si lo hago yo mismo, ¿cuáles serían los principales escollos?
Ok, veré lo que hago. Boost :: asio también tiene una interfaz ICMP que es muy buena, así que actualmente parece que usaré eso. – Skurmedel
shutdown () es una función válida para los sockets de Windows. ¿Tiene razón en que se debe usar closesocket()? –
closesocket es solo la versión de Windows de cierre, para que no tengan que sobrecargar la función de cierre. t TIENE que cerrar un archivo/socket, pero si no lo hace, puede perder datos. WSAGetLastError es solo la función de Windows para obtener errno, ya que la API de Windows no soportaba errno de la misma manera. Y para los sockets, POSIX admite versiones de "envío" y "recv" de lectura y escribir. – david