我有一个Windows应用程序,主窗体(mainform.cs)包括可以从主菜单中删除/添加的用户控件(即用户可以从主菜单关闭用户控件,用户控件是tabcontrols中选项卡内的布局) 何时关闭用户控件,我这样调用dispose:
If (!MediaControl.IsDisposed)
MediaControl.Dispose();
其中一个用户控件包括用于播放媒体的axWindowsMediaPlayer控件。 当应用程序启动时,它会成功加载该媒体用户控件,并能够正常播放媒体(添加媒体文件,更改播放列表项目,播放,暂停...等所有工作) 当我从主菜单关闭该用户控件时,媒体成功关闭。 但是当我再次尝试添加它时,我收到了这条消息:
"附加信息:已与其分离的COM对象 不能使用基础RCW。"
尝试初始化播放列表时VS调试中断:
// Within media usercontrol
protected override void OnFilesRefresh()
{
foreach (string file in files)
{
WMPLib.IWMPMedia m1 = axWindowsMediaPlayer.newMedia(file);
axWindowsMediaPlayer.currentPlaylist.appendItem(m1);
.....
}
}
虽然文件是文件路径数组。 newMedia方法导致了这个问题。 如何处理包含axWindowsMediaPlayer的媒体用户控件可能会再次初始化它而没有问题? 对不起我的英文
答案 0 :(得分:0)