Windows中内存映射文件的命名约定

时间:2013-12-06 02:30:27

标签: windows memory-mapped-files

我已经找到了答案,但遗憾的是我没有找到任何相关信息的运气!

本质上:Windows中内存映射文件的有效名称集是什么?

  • 他们能待多久?
  • 什么是合法字符,例如是正斜线,连字符,标点符号等合法吗?
  • 字符排序是否有限制,例如mmf名称不能以下划线开头?

编辑:我意识到这个问题的答案可能是“它们与Windows中的普通文件命名约定完全相同”。但是,澄清这一点很重要。

1 个答案:

答案 0 :(得分:4)

MemoryMappedFile.CreateNew对应CreateFileMappingdocumentation for CreateFileMapping

  

名称可以使用“Global”或“Local”前缀来显式创建   全局或会话命名空间中的对象。其余部分   name可以包含除反斜杠字符(\)之外的任何字符。   从会话中在全局命名空间中创建文件映射对象   除了会话零之外,还需要SeCreateGlobalPrivilege   特权。有关更多信息,请参阅内核对象命名空间。

换句话说,你可以使用你喜欢的任何字符串,只要它不包含反斜杠。