现成的API至少我没发现。
非要实现你所说的。
可以自己写1个类。
以文本方式读取文件.rc,通过对话框ID查询确定资源定义的地方,再通过后面的字符判断是不是自己需要的内容。
通过对话框ID和对话框上面的控件ID获取指定的对话框控件信息。
1个ID可能有2处定义,定义的项不同。搞清楚.rc的结构了就可以准确找出.rc里的全部信息。
比较复杂。不过写出一个类了以后就当API用了。
顺便说一下,你的想法很奇怪。我的方法更奇怪!
再顺便说一下,PE文件中资源的组织方式是:
第1层(资源类型)->第2层(资源ID)->第3层(资源代码页)->节点(资源数据指针)->数据
换个角度来说,你也就是在问一个窗口是怎么被windows内部创建的。我也想知道!!!
COMBOBOX IDC_CMB_SEARCH,30,4,102,30
LTEXT "查找:",IDC_STATIC,5,5,21,10
LTEXT "静态",IDC_LABEL_STATUS,2,159,136,13,
如果没猜错的话就这些后面的四个数吧,左上角与右下角的坐标,控件产生的时候就是以这几个数初始化大小的,你如果是获取控件大小,为什么不用GetWindowRect?难道它就不是现成的?难道它就不是API?无论是SDK还是MFC类库,它们所封装的依然是API,你的目的是完成需求而已。
第二个问题,估计你是想问类间访问成员,其实这个很普遍,网上一搜就搜到了,通常都是获取该资源框的句柄或者获取该类的应用指针,然后就可以间接访问了,实践起来很简单,但是说起来比较复杂而且难理解,建议你看一下网上的。
这实际上就是SDK中如何使用资源文件中已定义资源的问题
可以看一下
http://www.vckbase.com/document/viewdoc/?id=1564