UpdateResource

【勇芳软件工作室】汉化HomePreviousNext

UpdateResource函数添加,删除或替换可执行文件中的资源。

BOOL UpdateResource(

HANDLE 【更新】,//更新文件句柄
LPCTSTR 【//值类型缓冲区的地址】,//要更新的资源类型的地址
LPCTSTR 【lpName】,//要更新的资源名称的地址
WORD 【// language identifier of resource】,//资源的语言标识符
LPVOID 【的lpData】,//资源数据的地址
DWORD 【cbData】//资源数据长度,以字节为单位
); 

参数

【更新】

指定一个更新文件句柄。该句柄由BeginUpdateResource函数返回。

【//值类型缓冲区的地址】

指向要终止的字符串,指定要更新的资源类型。此参数也可以是传递给MAKEINTRESOURCE宏的整数值,也可以是以下预定义资源类型之一:

含义
RT_ACCELERATOR加速器表
RT_ANICURSOR动画光标
RT_ANIICON动画图标
RT_BITMAP位图资源
RT_CURSOR硬件依赖光标资源
RT_DIALOG对话框
RT_FONT字体资源
RT_FONTDIR字体目录资源
RT_GROUP_CURSOR与硬件无关的游标资源
RT_GROUP_ICON独立于硬件的图标资源
RT_ICON硬件依赖图标资源
RT_MENU菜单资源
RT_MESSAGETABLE消息表条目
RT_RCDATA应用程序定义资源(原始数据)
RT_STRING字符串表条目
RT_VERSION版本资源

【lpName】

指向一个以null结尾的字符串,指定要更新的资源的名称。此参数也可以是传递给MAKEINTRESOURCE宏的整数值。

【// language identifier of resource】

指定要更新的资源的语言标识符。有关构成语言标识符的主要语言标识符和子语言标识符的列表,请参阅MAKELANGID

【的lpData】

指向要插入到可执行文件中的资源数据。如果资源是预定义类型之一,则数据必须是有效的并且正确对齐。请注意,这是存储在可执行文件中的原始二进制数据,而不是由LoadIconLoadString或其他资源特定的加载函数提供的数据。包含字符串或文本的所有数据必须为Unicode格式; 【的lpData】不能指向ANSI数据。

如果【的lpData】为NULL,则从可执行文件中删除指定的资源。

【cbData】

指定【的lpData】中资源数据的大小(以字节为单位)。

返回值

如果函数成功,返回值不为零。

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.

备注

应用程序可以重复使用UpdateResource来更改资源数据。对UpdateResource的每次调用都有助于添加,删除和替换的内部列表,但实际上并不将数据写入可执行文件。应用程序必须使用EndUpdateResource函数将累积更改写入可执行文件。

也可以看看

BeginUpdateResource, EndUpdateResource, LoadIcon, LoadString, LockResource, MAKEINTRESOURCE, MAKELANGID, SizeofResource