win32可执行资源如何处理?

Nmd神秘

我不知道为什么在Google上找到这个问题的答案如此困难,但是我想弄清楚一点。

是否以相同的方式处理win32资源?静态数据是在整个过程中将数据保存在RAM中的整个过程,还是将它们像常规文件一样保存在磁盘上,直到加载到内存中?诸如LoadResource / LoadString之类的函数暗含后者,但我想绝对确定自己不会被抽象所迷惑。

阿德里安·麦卡锡(Adrian McCarthy)

在较早的日子(例如Windows 3.1和更早的版本)中,资源是在加载期间复制到内存中的,您只需对它们进行处理即可。内存管理器可以执行一些操作,例如将副本移动到内存中以整理磁盘碎片,甚至可以秘密地卸载资源,直到您再次需要它为止。当您需要资源时,还有第二步将其“锁定”到内存中。这为您提供了指向该副本的指针,并确保资源管理器在您再次对其进行解锁之前不会将其移动。

在Windows的32位版本中,不会复制资源。可执行文件(或DLL)被映射到内存中,如果您触摸该资源,虚拟内存管理器将确保它在您那里。

API(FindResource,LoadResource,LockResource)反映了过去,具有对资源的句柄和对句柄的锁定等。但是现在的实现要简单得多,因为句柄只是指向资源开始的指针,并且锁定很有效无操作,将句柄转换为指针类型并返回它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Win32可执行资源如何处理?

来自分类Dev

如何处理Win32错误消息的占位符?

来自分类Dev

使用PowerShell进行Win32可执行输出解析

来自分类Dev

如何使用来自 UWP 项目的 4 个参数启动 win32 可执行桌面

来自分类Dev

mingw32-g++ 编译器如何知道在 WIN32 机器可执行文件中注入系统调用的位置?

来自分类Dev

在PowerShell中Win32可执行文件输出的字母之间的单个空格

来自分类Dev

如何正确处理Win32 GUI消息循环?

来自分类Dev

如何手动将资源添加到Win32资源文件

来自分类Dev

使用嵌入式JRE将Shaded Java(jar)构建到Win32可执行文件中?

来自分类Dev

在Win32上处理CTRL + C

来自分类Dev

如何处理需要交互响应的可执行文件?

来自分类Dev

如何在Win32或MFC中按名称获取字符串资源?

来自分类Dev

如何在Win32或MFC中按名称获取字符串资源?

来自分类Dev

在执行过程中替换可执行文件时,如何处理“ / proc / self / exe”的readlink()?

来自分类Dev

C ++ Win32 Api资源文件

来自分类Dev

Win32在应用程序内使用资源字体

来自分类Dev

从Win32的字节数组创建字体资源

来自分类Dev

从Win32 / clr DLL中的资源加载.NET DLL

来自分类Dev

如何处理“无法加载资源”

来自分类Dev

WebAPI如何处理嵌套资源?

来自分类Dev

如何禁用按钮-Win32 API

来自分类Dev

如何使在Win32复选框?

来自分类Dev

Win10和Ubuntu WSL的Git提交-如何处理文件执行模式更改?

来自分类Dev

c ++ Win32多个窗口执行相同的操作

来自分类Dev

在Win32窗口中处理SDL事件

来自分类Dev

按钮按下处理Win32 C ++

来自分类Dev

找不到资源错误以及资源插件如何处理

来自分类Dev

如何停止以Win32 :: Daemon启动的Win32服务?

来自分类Dev

Win32的Cortana

Related 相关文章

  1. 1

    Win32可执行资源如何处理?

  2. 2

    如何处理Win32错误消息的占位符?

  3. 3

    使用PowerShell进行Win32可执行输出解析

  4. 4

    如何使用来自 UWP 项目的 4 个参数启动 win32 可执行桌面

  5. 5

    mingw32-g++ 编译器如何知道在 WIN32 机器可执行文件中注入系统调用的位置?

  6. 6

    在PowerShell中Win32可执行文件输出的字母之间的单个空格

  7. 7

    如何正确处理Win32 GUI消息循环?

  8. 8

    如何手动将资源添加到Win32资源文件

  9. 9

    使用嵌入式JRE将Shaded Java(jar)构建到Win32可执行文件中?

  10. 10

    在Win32上处理CTRL + C

  11. 11

    如何处理需要交互响应的可执行文件?

  12. 12

    如何在Win32或MFC中按名称获取字符串资源?

  13. 13

    如何在Win32或MFC中按名称获取字符串资源?

  14. 14

    在执行过程中替换可执行文件时,如何处理“ / proc / self / exe”的readlink()?

  15. 15

    C ++ Win32 Api资源文件

  16. 16

    Win32在应用程序内使用资源字体

  17. 17

    从Win32的字节数组创建字体资源

  18. 18

    从Win32 / clr DLL中的资源加载.NET DLL

  19. 19

    如何处理“无法加载资源”

  20. 20

    WebAPI如何处理嵌套资源?

  21. 21

    如何禁用按钮-Win32 API

  22. 22

    如何使在Win32复选框?

  23. 23

    Win10和Ubuntu WSL的Git提交-如何处理文件执行模式更改?

  24. 24

    c ++ Win32多个窗口执行相同的操作

  25. 25

    在Win32窗口中处理SDL事件

  26. 26

    按钮按下处理Win32 C ++

  27. 27

    找不到资源错误以及资源插件如何处理

  28. 28

    如何停止以Win32 :: Daemon启动的Win32服务?

  29. 29

    Win32的Cortana

热门标签

归档