高手请进! 关于TVariant的疑难杂症!(问题解决后马上散分)

overit 2003-10-09 11:45:15
程序中访问一个ActiveX控件的属性.该属性为VARIANT类型,内容为ARRAY数组.

现能正确取得的内容,但在程序退出时总是报错,如下:

Project Project1.exe raised exception class EAcessViolation with message 'Access violation at address 100230D0 . Read of address 100230D0'.Process stopped. Use Step or Run to continue.

程序中如果不访问这个属性.则退出时不报错.如果在退出时,在FormClose中加断点用F8调试,则不报该错误.该控件在VC下使用时也不报错.

据跟踪,该错误好象在~TVariant(::VariantClear())时发生.

请高手指点!
...全文
32 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
overit 2003-11-24
  • 打赏
  • 举报
回复
up
overit 2003-11-20
  • 打赏
  • 举报
回复
用了oleinitialize(NULL)后,单独运行可以不报错退出。但在cb中run,在退出时还是报错。
MackedNice 2003-11-20
  • 打赏
  • 举报
回复
up
yjy1001 2003-11-05
  • 打赏
  • 举报
回复
没碰见过……
高手也要工作——也要休息 的嘛

(偶是菜鸟,只是来帮你up的)
overit 2003-10-23
  • 打赏
  • 举报
回复
好象高手们都休假了?
overit 2003-10-20
  • 打赏
  • 举报
回复
up
Wingsun 2003-10-15
  • 打赏
  • 举报
回复
程序退出的时候把Variant对象设置成为NULL对象。
overit 2003-10-15
  • 打赏
  • 举报
回复
Cdm->CUId是TVariant类型,我没有自定义TVariant类型的变量,没办法把Variant对象设置成为NULL对象.Cdm对象倒是退出时先DELETE了,但效果一样,依然报错.
kataboy 2003-10-14
  • 打赏
  • 举报
回复
我以前也是遇到过这样的情况,不过也没有解决,帮你UP!
bullHEcow 2003-10-14
  • 打赏
  • 举报
回复
学习
overit 2003-10-14
  • 打赏
  • 举报
回复
UP
Libran 2003-10-10
  • 打赏
  • 举报
回复
.GetElement[3];
——改成.GetElement(3)试试(圆括号,不是方括号)
overit 2003-10-10
  • 打赏
  • 举报
回复
SORRY!

GetElement[3];是发帖时笔误,调试时已经是GetElement(3);.

谢谢你先!


帮忙UP,亦有分!
zihan 2003-10-09
  • 打赏
  • 举报
回复
呵呵,没有这么奇怪吧,调试就不出错?

一般是你删除了一个你没有申请的东西会这样
niuzhenjun 2003-10-09
  • 打赏
  • 举报
回复
信息太少,解决不了
Siney 2003-10-09
  • 打赏
  • 举报
回复
贴出来调用代码,否则无法诊断
ljianq 2003-10-09
  • 打赏
  • 举报
回复
你的调用方法写出来,先看看。
overit 2003-10-09
  • 打赏
  • 举报
回复
我更改程序变成
AnsiString asCuid;

asCuid = "";

Cdm->CUId.GetElement[3];

也同样出错.但只要去掉Cdm->CUId.GetElement[3];,即不访问该属性则不会有错误.
overit 2003-10-09
  • 打赏
  • 举报
回复
我没有主动删除东西,是程序退出时,析构时出的错.

调用的源码如下:

AnsiString asCuid;

asCuid = Cdm->CUId.GetElement[3];

重复调用多次也不出错,但在程序退出时报上面的提到的错误.

而且该调用代码在该工程只加载该ActiveX控件时也不出错.

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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