导航
  • 主页
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

关于File Mapping 的问题

likebj 2002-07-23 10:56:15
在CreateFileMapping((HANDLE)0xFFFFFFFF, NULL, PAGE_READWRITE, 0, MAX_CHANNEL_PKTS*42+64, "GxReceiv")里(HANDLE)0xFFFFFFFF是什么意思?
为什么要这么表示?
...全文
22 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
likebj 2002-07-23
麻烦
回复
likebj 2002-07-23
我知道了,可是MFC里是这样的:
#define INVALID_HANDLE_VALUE (HANDLE)-1
怎么会是0xFFFFFFFF呢?
回复
FallingAngle 2002-07-23
(HANDLE)0xFFFFFFFF就是INVALID_HANDLE_VALUE

MSDN:
hFile
[in] Handle to the file from which to create a mapping object. The file must be opened with an access mode compatible with the protection flags specified by the flProtect parameter. It is recommended, though not required, that files you intend to map be opened for exclusive access.
If hFile is INVALID_HANDLE_VALUE, the calling process must also specify a mapping object size in the dwMaximumSizeHigh and dwMaximumSizeLow parameters. In this case, CreateFileMapping creates a file-mapping object of the specified size backed by the operating-system paging file rather than by a named file in the file system. The file-mapping object can be shared through duplication, through inheritance, or by name. The initial contents of the pages in the file-mapping object are zero.

回复
likebj 2002-07-23
这样啊,知道了!:)我怎么给你们加不了分?
回复
yonghengdizhen 2002-07-23
我知道了,可是MFC里是这样的:
#define INVALID_HANDLE_VALUE (HANDLE)-1
怎么会是0xFFFFFFFF呢


-1的十六进制表示就是0xFFFFFFFF
DWORD
回复
SoftAngel 2002-07-23
使用(HANDLE)0xFFFFFFFF做参数,是说并不是真的要映射文件,而是创建一共享内存块,在使用mapviewoffile后,可以使用这块共享内存,这是进程间通讯最常用的一种方法。
回复
ivefire 2002-07-23
#define HANDLE 0
#define INVALID_HANDLE_VALUE (HANDLE)-1
INVALID_HANDLE_VALUE 就是0xFFFFFFFF
在CreateFileMapping((HANDLE)0xFFFFFFFF, NULL, PAGE_READWRITE, 0, MAX_CHANNEL_PKTS*42+64, "GxReceiv")中(HANDLE)0xFFFFFFFF表示在系统的页文件里建立FileMapping
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……