Boost logo

Boost Users :

Subject: [Boost-users] [Boost-Users][interprocess]ERROR_ACCESS_DENIED when removing a message_queue
From: Laurence Chambenois (lchambenois_at_[hidden])
Date: 2009-04-07 09:09:47


Hi,

I'm a beginner with boost, so please don't throw things at me ...

I'm using boost message_queue in a sample program, on Windows, that just
does :

    - create the message_queue
    - remove the message_queue

It works fine, if my program does this :
    try
    {
    message_queue mq1(create_only, "toto", 10, 100);
    }
    catch (interprocess_exception &err)
    {
    return -1;
    }

    message_queue::remove("toto");

but if it does :

    message_queue *mq1=0;

    try
    {
    mq1 = new message_queue(create_only, "toto", 10, 100);
    }
    catch (interprocess_exception &err)
    {
    return -1;
    }

    message_queue::remove("toto");

then the remove return ERROR_ACCESS_DENIED (on tthe DeleteFile call). I
don't understand why. Is somebody can tell me what is wrong with my code ?

Thanks for your reply.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net