关于AxWindowsMediaPlayer控件unhandled exception错误的解决方案

最近闲来无事,做了一个关于windows media player的程序,期间发现不少问题,苦思冥想,终得一解,不敢独享,与君参考。

 

 

AxWindowsMediaPlayer是windows media player的.com控件,toolbox item 中可以找到,不再赘述。

 

使用时发现一旦使用 就会报错

 

An unhandled exception of type 'System.Windows.Forms.AxHost.InvalidActiveXStateException' occurred in AxInterop.WMPLib.dll

 

自然google一下,倒也有不少相同的问题,然解决的却没几个。

 

某E文帖中描述,这种错误发生在控件未初始化完成时就被调用。

 

前思后想,不得要领。

 

又有一篇,也点到这个问题,但仍未及解决。

 

最后,感觉仍然要回到程序中去寻找

 

这里不得不说一下VS的强大

 

一个下拉式列表将所有的类,方法,属性全部包括

 

即使不知道要用什么,一项一项看下来,也终会找到,真是让人又爱又恨。

 

最后发现AxWindowsMediaPlayer有个EndInit()的方法,看着名字像完成初始化,想及前面的E文帖,猜想会不会是这个。

 

果然不出所料,加入AxWindowsMediaPlayer.EndInit()之后,之后的程序就能调用AxWindowsMediaPlayer了。

你可能感兴趣的:(关于AxWindowsMediaPlayer控件unhandled exception错误的解决方案)