[問題] shared memory CreateFileMapping 限制
看板C_and_CPP (C/C++)作者fftsquall (just only you know)時間13年前 (2013/01/08 20:35)推噓2(2推 0噓 1→)留言3則, 2人參與討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC 2012
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
使用CreateFileMapping
(INVALID_HANDLE_VALUE, NULL, PAGE_EXECUTE_READWRITE, 0, 640*480*3, L"XXXX");
有拿到HANDLE 但是之後在做 memcpy_s()時,
在copy到第307184個byte時 就出現access violation
餵入的資料(Input):
預期的正確結果(Expected Output):
預期應該要copy完最後一個byte
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
看起來有點像是寫超過一個page的大小? 不太確定是不是 不知道有沒版友遇過這問題
另外, 有考慮過使用large page的方式,
如: http://msdn.microsoft.com/en-us/library/windows/desktop/aa366543(v=vs.85).aspx
但是仍會在getlasterror()得到 1314的error code
ERROR_PRIVILEGE_NOT_HELD
不知道有沒甚麼好的解決方式
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.163.84.235
※ 編輯: fftsquall 來自: 118.163.84.235 (01/08 20:35)
推
01/09 00:38, , 1F
01/09 00:38, 1F
推
01/09 10:11, , 2F
01/09 10:11, 2F
→
01/09 10:12, , 3F
01/09 10:12, 3F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章