2012-08-05 74 views
0

我一直在尝试在RCDATA资源中存储一些值,但我不确定我应该如何单独访问它们。如何访问RCDATA资源的元素?

HGLOBAL hMem = LoadResource(hInstance,FindResource(hInstance,MAKEINTRESOURCE(IDR_RCDATA),RT_RCDATA)); 
PVOID lpData = LockResource(hMem); 

我“觉得”我已成功获得一个指向我的数据,但什么,我现在该怎么办,我不知道。

http://msdn.microsoft.com/en-us/library/cc194809.aspx是我能找到的唯一信息,除了delphi的例子,都没有帮助过我。我的RCDATA如下。

IDR_RCDATA RCDATA 
{ 
    10, 
    30 
} 

任何人都知道如何做到这一点?

回答

2

这样的资源没有结构,它只是一个字节blob。您需要编写强加结构的代码。在你的.rc代码片段中没有可见的东西,所以唯一合乎逻辑的就是只读取字节lpData [index]。 SizeOfResource()可帮助您避免将blob超出边界索引。