Invalid access to memory location exception

  • Shai

    Shai - 2013-03-21


    I am working with the library for grabbing video from frame grabbers and cameras for more than a year now and it works well. About a week ago I got a new camera which we consider to integrate and I cannot make it work through the DirectShow.NET - it keeps failing on:

    hr = m_FilterGraph.AddSourceFilterForMoniker(dev.Mon, null, dev.Name, out capFilter);
    I get an exception hr = 0x800703e6, Invalid access to memory location

    It happens only with this camera.
    The camera works OK when activated through VLC or AmCap.

    Any suggestions?


  • Eric

    Eric - 2013-03-21

    I see two things you should check :
    1) What kind of driver is installed for the camera (User Mode, Kernel Mode) ? Does it support 32 and 64 bits ?
    2) What are the values of dev.Mon and dev.Name ? Are they valid ?

  • Shai

    Shai - 2013-03-21

    1) The camera works OK through VLC, AmCap and their proprietary software, so I suppose the driver is OK.
    2) dev.Name looks valid. dev.Mon has a lot of empty fields and pointers, but this is also a case with other cameras.

    • Eric

      Eric - 2013-03-22

      I really don't know.

      "VLC, AmCap and their proprietary software" are 32 bits software. If you are using a 64 bits OS, try to run your application using x86 instead of AnyCPU.

      Also since 0x800703e6 is ERROR_NOACCESS, try to run your apps as Administrator to see what happen.

  • Shai

    Shai - 2013-03-24

    Hi Eric,

    Thanks for your input, it proved to be helpful. Indeed, the problem seems to be in 64-bit. If running the application as 32-bit, it works OK. Probably the driver has issues with 64-bit.


Log in to post a comment.