sto per sviluppare alcune prese roba connessi in C++ e vorrei il software di essere il più portabile tra Windows e Linux il più possibile fin dall'inizio (il che rende più tardi portatile è difficile.)Winsock 2 portabilità
Ho esaminato diverse librerie, ce n'è una per C++ da alhem.net e ovviamente c'è boost :: asio. boost :: asio sembra molto promettente, ma sarebbe una dipendenza molto grande per le applicazioni così piccole.
Vale la pena scrivere da solo o anche solo una libreria? Se lo faccio io, quali sarebbero le principali insidie?
Ok, vedrò cosa faccio. Boost :: asio ha anche un'interfaccia ICMP che è molto carina quindi al momento sembra che userò quello. – Skurmedel
shutdown () è una funzione valida per i socket di Windows. È tuttavia corretto utilizzare closesocket(). –
closesocket è solo la versione di Windows di chiusura, in modo che non debbano sovraccaricare la funzione di chiusura. t DEVI chiudere un file/socket, ma se non lo fai, potresti ottenere una perdita di dati. WSAGetLastError è solo la funzione di Windows per ottenere l'errore, dal momento che l'API di Windows non supportava errno nello stesso modo. E per i socket, POSIX supporta le versioni "send" e "recv" di read e Scrivi. – david