boost :: diffusion asio UDP

Je veux UDP de diffusion des messages à tous les ordinateurs d'un réseau local à l'aide boost::asio. De travail à travers les exemples que je suis venu avec

try {
    socket.open(boost::asio::ip::udp::v4());
    boost::asio::socket_base::broadcast option(true);
    socket.set_option(option);
    endpoint = boost::asio::ip::udp::endpoint(
        boost::asio::ip::address::from_string("192.168.1.255"),
        port);
}
catch(std::exception &e) {
}

et souhaitez diffuser des messages de ma file d'attente avec

while(!queue.empty()) {
    std::string message = queue.front();
    boost::system::error_code ignored_error;
    socket.send_to(
        boost::asio::buffer(message),
        endpoint,
        0, ignored_error);
    queue.pop_front();
}

mais mon code déclenche une exception invalid argument exception dans le premier bloc de code. Il fonctionne très bien pour 127.0.0.1. Ce que je fais mal?

source d'informationauteur nijansen | 2012-02-16