首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

奇怪,为什么最近发帖子没人回啊热心人来帮个有关问题

2012-03-11 
奇怪,为什么最近发帖子没人回啊,热心人来帮个问题我想取得别的程序中的outline的内容,通过钩子注入程序中,

奇怪,为什么最近发帖子没人回啊,热心人来帮个问题
我想取得别的程序中的outline的内容,通过钩子注入程序中,得到outline的对象,但是outline的类名好像是自定义的为ELHOutline,我把它强制转化为outline了,但是操作这个对象却得不到其中的内容,为什么啊?自己就做了个程序试了一下,用businessskin做了个stringgrid表格,通过钩子获取这个表格中的内容,结果也得不到,难道是不可以通过强制转化为stringgrid类的对象得到其中的内容??明白人解释一下

[解决办法]
关键要看ELStringgrid这个组件是从哪个类继承的。
[解决办法]
ELStringgrid自定义类型是否继承自stringgrid,若不是的话就与stringgrid类型不一致,强制转换后自定义类型ELStringgrid部分内容丢失,当然就得不到其中的内容!
[解决办法]
如果自定义的就没办法了
[解决办法]
有的对象你在EXE里创建,在DLL里通过它的指针调用成员函数是无法操作它的。例如这个:
class CTest()
{
 。。。。。 省略无关代码
void PrintValue()
{
cout << value << endl;
}
private:
static int value;
};

因为有静态成员,如果跨模块使用取不到该成员的值,这时候功能就不正确了。遇到这种情况,你只能在DLL中另写一个函数来实现类似于PrintValue()的功能,比如把value成员的地址也找到直接输出之类。

热点排行