Где находится boost :: asio :: windows :: stream_handle в boost 1.46.1? - PullRequest
2 голосов
/ 20 апреля 2011

Однажды мы получили код повышения, например:

typedef BoostAsioPipe pipe;
#elif defined(BOOST_POSIX_API)
typedef boost::asio::posix::stream_descriptor pipe;
#elif defined(BOOST_WINDOWS_API)
typedef boost::asio::windows::stream_handle pipe;
#else
#   error "Unsupported platform."
#endif

но теперь, например, в windows компилятор сообщает нам, что stream_handle не является частью boost :: asio ... так где он сейчас? (и находится ли stream_descriptor в том же месте или он также перемещен)?

Обновление

Глупо: сейчас что-то вроде boost::asio::windows::pipe, но компилятор выдает C3083

#elif defined(BOOST_WINDOWS_API)
    typedef boost::asio::windows::pipe  pipe;
#else

1 Ответ

1 голос
/ 06 мая 2011

Это то, что вы хотите?(из http://think -async.com / Asio / asio-1.4.8 / doc / asio / обзор / windows / stream_handle.html )

РУЧКИ произвольного доступа Windows доступны тольково время компиляции при нацеливании на Windows и только при использовании бэкэнда порта завершения ввода / вывода (который используется по умолчанию).Программа может проверить макрос BOOST_ASIO_HAS_WINDOWS_STREAM_HANDLE, чтобы определить, поддерживаются ли они.(также действительно для BOOST_ASIO_HAS_WINDOWS_RANDOM_ACCESS_HANDLE)

...