当64位应用程序达到2GB时,CreateFileMapping失败



我有一个64位应用程序WPF/C#,它使用CreateFileMapping()分配内存一旦我达到2GB限制,函数就会返回错误1455。

我的机器有32GB的RAM,页面文件被禁用。是不是CreateFileMapping(win32 API)只能在32位上工作?

_byteCount = (uint)((_stride) * height * ((short)bpp).NumberOfBytes());
 ColorFileMapping = CreateFileMapping(new IntPtr(-1), IntPtr.Zero, 0x04, 0, _byteCount, null);

_byteCount应为DWORD类型,以避免uint溢出。

相关内容

  • 没有找到相关文章

最新更新