欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

二进制资源和自定义资源使用定义

程序员文章站 2022-03-02 11:37:43
...
1、二进制资源
(1)定义格式:
    资源IDRCDATA [DISCARDABLE]
   BEGIN
          数据定义
   END
(2)装入资源的例子(MASM32)
 invokeFindResource,hInstance,ID_MYRES,RT_RCDATA ;寻找资源
 .if eax
    mov hres,eax;返回资源句柄
    invoke SizeOfResource,hInstance,eax ;获取资源尺寸
    mov dwResSize,eax
    invoke LoadResource,hInstance,hres ;装入资源
    .if eax
          invokeLockResource,eax ;锁定资源
         .if eax
             mov lpres,eax  ;将资源内存地址给lpres
             ..........
             ..........
         .endif
    .endif
.endif
二、自定义资源
(1)定义格式:
   资源ID 类型ID [DISCARDABLE]
   BEGIN
          数据定义
   END
   
   或者用一个磁盘文件做资源的内容:
 
    资源ID类型ID [DISCARDABLE]
   BEGIN
       数据定义
   END
  
  类型ID必须是大于255的数值或字符串
(2)装入资源的例子(MASM32)
  跟二进制资源相似,惟一的区别是使用FindResource得到hres的参数有区别。
   参数如下:
   szResType1 db "WAVE",0;类型ID是WAVE
  
 
   invokeFindResource,hInstance,1000,addr szRestype ;1000是资源ID
 
   invokeFindResource,hInstance,1000,1000 ;1000是资源ID和类型ID
三、资源的释放,不必使用任何函数去释放它们,WINDOWS在程序退出时会自动释放它们。
  
相关标签: Windows