Системная ошибка 0x5: CreateFileMapping ()

Я хочу реализовать IPC с использованием именованной общей памяти.

Для этого одним из шагов является получение дескриптора для Mapping Memory Object , используя CreateFileMapping ().

Я делаю это в точности так, как рекомендует сайт MSDN: http://msdn.microsoft.com/en-us/library/aa366551 (v = VS.85) .aspx :

hFileMappingHandle = CreateFileMapping
    (
        INVALID_HANDLE_VALUE,      // use paging file
        NULL,                      // default security 
        PAGE_READWRITE,            // read/write access
        0,            // maximum object size (high-order DWORD) 
        256,            // maximum object size (low-order DWORD)  
        "Global\\MyFileMappingObject"          // name of mapping object
    ); 
DWORD dwError = GetLastError();

Однако возвращаемый дескриптор всегда 0x0 , а возвращаемый код системной ошибки : 0x5 (доступ запрещен.)

  • Требуется только Совместное использование именованной памяти (не совместное использование файлов).
  • Windows 7 x64 бит ОС
  • Доступны права администратора
  • Разработанное приложение: 64-битное приложение Plug-In (.dll)

Есть ли у кого-нибудь такой же опыт и способ исправить это, пожалуйста? Я использую сайт MSDN в качестве справочника, поэтому не думаю, что есть проблема в коде.

11
задан svick 11 September 2015 в 12:59
поделиться