CreateFileMapping и привилегии процесса

Тема в разделе "WASM.WIN32", создана пользователем deLight, 15 фев 2009.

  1. deLight

    deLight New Member

    Публикаций:
    0
    Регистрация:
    26 май 2008
    Сообщения:
    879
    Проблема следующая..
    Разделяю данные через MMF, собссно код:
    Код (Text):
    1. if (ul_reason_for_call==DLL_PROCESS_ATTACH)
    2. {
    3.  static HANDLE s_hFileMap = NULL;
    4.  
    5.  s_hFileMap = CreateFileMapping(INVALID_HANDLE_VALUE, NULL,
    6.     PAGE_READWRITE, 0, LIST_CNT * LIST_SIZE, TEXT("WFShared"));
    7.  
    8.     if (s_hFileMap != NULL) {
    9.      if (GetLastError() == ERROR_ALREADY_EXISTS) {
    10.         bFirstRun = FALSE;
    11.         CloseHandle(s_hFileMap);
    12.         HANDLE hFileMapT = OpenFileMapping(FILE_MAP_READ | FILE_MAP_WRITE, FALSE, TEXT("WFShared"));
    13.             ....
    эта либа аттачится к браузеру и работает во всех случаях кроме IE.
    В последнем получаю ERROR_ACCESS_DENIED на CreateFileMapping( ).

    Сам факт что сыпется только на IE наталкивает на мысль что проблема не в коде, а возможно в привилегиях процесса. Если да, подскажите плз какая конкретно привилегия нужна и как ее получить?

    thx
     
  2. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    Надо явно указать SECURITY_ATTRIBUTES

    http://msdn.microsoft.com/en-us/library/ms717798.aspx
    http://msdn.microsoft.com/en-us/library/aa366559.aspx