200分!!System.Windows.Forms.AxHost.InvalidActiveXStateException问题

rroamer 2008-11-06 12:08:58
各位,我在form中能够很好的调用我引用的activeX控件(MFC写的ACTIVEX),但是当我将他放在一个自己写的类时,也按照form中的代码进行初始化,但是在调用其方法时总是出System.Windows.Forms.AxHost.InvalidActiveXStateException异常。
我想是不是由于此控件有GUI,而我的自写的类不包含GUI支持。


请问要怎解解决???????
...全文
1872 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
elainte 2010-04-24
  • 打赏
  • 举报
回复
我也遇到这个问题了。
正在查资料
danshuitaihejie 2010-01-03
  • 打赏
  • 举报
回复
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Windows.Forms;

/// <summary>
///winform 的摘要说明
/// </summary>
public class winform : Form
{
public AxCTVideoRecvOcxLib.AxCTVideoRecvOcx CTV;
public winform()
{


}
public void go()
{

CTV= new AxCTVideoRecvOcxLib.AxCTVideoRecvOcx();
((System.ComponentModel.ISupportInitialize)(this.CTV)).BeginInit();
this.Controls.Add(CTV);


((System.ComponentModel.ISupportInitialize)(this.CTV)).EndInit();
CTV.ConnectVideo("192.168.1.36", 40005, "admin", "admin", 0);

CTV.SetImageParameter(100, 100, 100);
CTV.DisConnectVideo();

}
}
这是我在Winform里新建的一个类,在这个新类里调用ActiveX控件的全过程! 我也是被这东西弄了好久啊~~~有问题请加QQ 474182370
danshuitaihejie 2010-01-03
  • 打赏
  • 举报
回复
((System.ComponentModel.ISupportInitialize)(this.ax)).BeginInit();
this.Controls.Add(ax);
((System.ComponentModel.ISupportInitialize)(this.ax)).EndInit();
这样就可以了 哈哈 弄了整整一天!!!!!!
High_Mount 2009-08-28
  • 打赏
  • 举报
回复
看看
jayu1987 2009-07-30
  • 打赏
  • 举报
回复
我的代码也出现这个问题,不过在我把那个控件添加到窗口的控件里就没有这个问题了。
this.Controls.Add(activeXControl);
但是知其然不知其所以然……
hornbills 2008-11-06
  • 打赏
  • 举报
回复
MSDN:只有在完成对 ActiveX 控件的实例化和初始化之后,才可以引用 ActiveX 控件的公有属性和方法,否则就会引发 AxHost.InvalidActiveXStateException 异常。

MSDN的解释
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.axhost.invalidactivexstateexception(VS.80).aspx


以前的问题
http://topic.csdn.net/t/20030509/00/1758398.html
zcl26 2008-11-06
  • 打赏
  • 举报
回复
不了解这个问题,给顶一下吧

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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