com中的集合类型怎么存取?高手帮忙!急!急!急!

eliubo 2004-09-07 09:18:30
对象中的属性是个集合类型,怎么在com中进行访问。
例如:(C#代码,已经注册为com)
public class MyObject
{
public MyClassCollection ClassProperty{get{}set{}}
}
pubilc class MyClassCollection
{
ArrayList al;
public void Add(MyClass myClass)
{al.Add(myClass);}
}
public class MyClass
{
public string Property1{get{}set{}}
}
现在在vc6中通过调用MyObject对象怎么访问Property1的属性?
现在我用的是智能指针
_MyObject myobj(__uuidof(MyObject));
myobj-> //看不到ClassProperty属性,只能看到GetIdsOfNames,Invoke等方法。
...全文
195 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
eliubo 2004-09-09
  • 打赏
  • 举报
回复
up
wangweixing2000 2004-09-08
  • 打赏
  • 举报
回复
返回一个MyClassCollection个有问题!不能直接返回类!只能是接口!
wangweixing2000 2004-09-08
  • 打赏
  • 举报
回复
有两种可能,1,你的clsid没有给对
2,你的属性参数不可用!
eliubo 2004-09-08
  • 打赏
  • 举报
回复
类型库中MyClassCollection 的接口为_MyClassCollection, MyClass的接口为_MyClass.
是不是只能返回"_MyClassCollection"指针,然后用GetIdsOfNames和Invoke来调用Item属性(根据索引返回其中一个对象),返回"_MyClass"指针,然后再用上述两个方法调用其中的属性Proerty1?
eliubo 2004-09-07
  • 打赏
  • 举报
回复
我就是想通过MyClassCollection集合访问MyClass的Property1.
MyClassCollection是MyClass对象的集合,也可以理解为数组。
luohualiushui 2004-09-07
  • 打赏
  • 举报
回复
你的myobj指向的不是MyClass怎么会有Property1呢?
eliubo 2004-09-07
  • 打赏
  • 举报
回复
不能调用,说类中没有该成员。
snaill 2004-09-07
  • 打赏
  • 举报
回复
看不到是不是也不能调用阿,IDE又不是万能的
eliubo 2004-09-07
  • 打赏
  • 举报
回复
up

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧