读书人

ATL中存储Variant对象探讨。解决办法

发布时间: 2012-01-13 22:43:29 作者: rapoo

ATL中存储Variant对象探讨。
在ATL中实现了一个ICollection接口,其功能跟VB的Dictionary或Collection相类似。调用时都是用VB程序调用。现在的问题是:在其中保存数字或字符串,可以正常放入和取出。但在其中保存Variant对象时,当创建Variant的VB程序退出后,不能正常取出其中的Variant对象,会抛出异常。估计是VB的Variant对象被VB销毁了。

现在的问题是:有什么办法可以不让VB销毁对象,或在ATL中复制一份一模一样的Variant对象?


[解决办法]
msdn2.microsoft.com/en-us/library/ms891674.aspx -
[解决办法]
实现IDispatch并且加上线程安全的代码,使得在同一时间只有一个线程可能可以访问集合。
[解决办法]
把variant变量转为结构体可以吗
[解决办法]
把变量复制一份就可以了

读书人网 >VB

热点推荐