spaceh 发表于 2004-11-1 09:25:00

[ARX]派生于AcDbObject的定制类实体加入到对象字典的问题??

派生于AcDbObject的定制类实体加入到对象字典的问题??
问题如标题:
具体如下:
MyObject*pObj1 = new MyObject();
AcDbObjectId rId1;
Acad::ErrorStatus rs=pDict->setAt("FILE_INFO", pObj1, rId1);
MyObject是我自己定义的派生于AcDbObject的定制类。
pDict是指向用户对象字典的指针(已经有这个指针了),
pObj1是加入字典中的对象的指针(这个地方我NEW得对不对呢)?
此段代码的执行返回值为什么是eWrongObjectType呢,
求教诸位大侠了^_^
多谢!

easypower 发表于 2004-11-1 12:52:00

你的自定义实体有没有MyObject::rxInit();

spaceh 发表于 2004-11-2 19:20:00

有啊!
我的自定义类里面:
void InitApplication()
{
        // NOTE: DO NOT edit the following lines.
        //{{AFX_ARX_INIT
        MyObject::rxInit();
.......
}

easypower 发表于 2004-11-3 11:00:00

InitApplication()你在哪执行的?

spaceh 发表于 2004-11-12 17:30:00

谢谢版主easypower的帮助,前几天回家了,呵呵,没有弄程序,今天来看到回复真是开心,呵呵。
我的        MyObject::rxInit();是放在自定义类的InitApplication()里面执行的,这个自定义类是一个单独的工程,生成为一个dbx文件。上面的(提问题的)代码是在我的新的工程test.dsw里添加的,你的意思是要我把MyObject::rxInit();放在当前我的test.dsw的InitApplication()下吗,我尝试了一下好像还是老错误啊。实在是不知道什么问题,呵呵,见笑了!

easypower 发表于 2004-11-12 18:19:00

再你的dbx中InitApplication。
把你的工程贴上来,我可以帮你看看

spaceh 发表于 2004-11-13 19:46:00

我要整理一下才能传,最近在忙其他的事情了,近二天传上来!^_^

spaceh 发表于 2004-11-26 12:02:00

问题暂时找出来了,就是在我使用这个类的时候还没有执行initApplication函数,所以会出现类型错误,调换一下就可以了,呵呵,多谢各位!thanks。
页: [1]
查看完整版本: [ARX]派生于AcDbObject的定制类实体加入到对象字典的问题??