当前位置: 代码迷 >> VC >> VC++ 从dll中获取字符串有关问题
  详细解决方案

VC++ 从dll中获取字符串有关问题

热度:7001   发布时间:2013-02-25 00:00:00.0
VC++ 从dll中获取字符串问题
小弟第一次创建纯资源dll,但是在使用dll中的字符串的时候碰到了问题。

  dll中创建了一个String Table,其中包含了一系列字符串资源。但是在加载该dll并使用LoadResource获取相应字符串的时候,获取到的不只是我需要的字符串,还顺带着得到了后续的部分字符串。

  比如:在dll的String Table中有3个字符串:
  IDS_STATE_DISCONNECTED 104 Not connected
IDS_STATE_RUNNING 105 App's now running
ISD_STATE_STOPPED 106 App's now stopped

  然后在运行的过程中,想要通过FindResourceExW和LoadResource获取value为104的字符串,但是105和106的字符串也会紧跟其后,输出结果类似: 
  Not connected?App's now running?App's now stopped

  有没有哪位老大知道这是什么原因造成的?小弟拜谢...

问题补充:因为需要做国际化和本地化的字符串工作,所有版本的String Table都在同一个dll中,此外需要同时支持Win XP及其以后版本,且获取字符串过程中不做字符拷贝。

------解决方案--------------------------------------------------------

loadstring
  相关解决方案