Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何处理System.Windows.Forms.Axhost+;InvalidActiveXState异常_C#_Winforms_.net 4.0_Interop - Fatal编程技术网

C# 如何处理System.Windows.Forms.Axhost+;InvalidActiveXState异常

C# 如何处理System.Windows.Forms.Axhost+;InvalidActiveXState异常,c#,winforms,.net-4.0,interop,C#,Winforms,.net 4.0,Interop,我正在开发一个程序,该程序应该读取realplayer文件的持续时间,然后将其设置为计时器。时间间隔,无论何时调试程序都没有错误,但当尝试获取文件长度时,我得到以下错误:System.Windows.Forms.Axhost+InvalidActiveXState异常。我正在使用一个名为AxRealAudioObjects.dll的程序集,其版本为2.0。我记得它在.NET2.0上运行得非常好,但由于当前的.NET版本是4.0,因此会出现此错误。dll是否损坏或是其他原因?来自MSDN,“Act

我正在开发一个程序,该程序应该读取realplayer文件的持续时间,然后将其设置为计时器。时间间隔,无论何时调试程序都没有错误,但当尝试获取文件长度时,我得到以下错误:
System.Windows.Forms.Axhost+InvalidActiveXState异常
。我正在使用一个名为AxRealAudioObjects.dll的程序集,其版本为2.0。我记得它在.NET2.0上运行得非常好,但由于当前的.NET版本是4.0,因此会出现此错误。dll是否损坏或是其他原因?

来自MSDN,“ActiveX控件在无效状态下被引用时引发的异常”。在这种情况下,您无法“处理”此错误;COM/ActiveX处于未知状态。您的代码中存在错误,ActiveX控件代码中存在错误,或者其他错误。确保您以支持的方式使用ActiveX。

大多数ActiveX控件都有
CreateControl()
方法,请先调用该方法。如果在调用
CreateControl()
call
Refresh()
next

后控件未显示,是否使用设计器在窗体上删除了该控件?ActiveX控件所必需的。@汉斯:我没有。代码为:
AxRealAudio file=new AxRealAudio()file.Source=@“C:\1.rm”出现错误:
MessageBox.Show(file.GetLength().ToString())然后不要使用AxHost包装器。使用常规互操作库。应该被命名为相同的,减去“Ax”,以便该bug来自旧版本的DLL?