我有一个名为VideoForm形成具有的Windows Media Player播放器叫。
public AxWMPLib.AxWindowsMediaPlayer player;
当我打开VideoFrame.cs [设计]我得到两个错误:
找不到类型“AxWMPLib.AxWindowsMediaPlayer”
变量“球员”要么是未声明或从未分配。
如果我创造我的解决方案的新形式,并尝试将Windows媒体播放器添加到它,我得到这个错误:
无法创建组件“AxHost”错误消息如下所示:“System.Reflection.ReflectionTypeLoadException:无法加载所请求的类型的一个或多个。
(具有下文基本上达列出一吨的类型“的东西工具箱需要做出控制”)
我曾尝试 :重新启动Visual Studio中,重新启动我的电脑,删除并重新导入库,切换到32楼,再切换回64楼一遍,发现手工我的机器上的lib文件。
但这里有一个奇怪的部分-如果我关闭这个解决方案,打开另一个,添加Windows媒体播放器,编译成64位,然后关闭并重新打开原来的解决方案,我不明白的错误!
编辑:然而,我得到了以下两个错误,当我尝试上面的“黑客”:
从道路警告处理COM引用 “WMPLib” “C:\ WINDOWS \ SYSTEM32 \的Wmp.dll”。 类型库导入遇到了类型“WMPLib.IWMPNowPlayingHelperDispatch”属性的getter“sessionPlaylistCount”没有一个有效的返回类型。 进口商将尝试导入该物业作为替代的方法。
and
处理COM引用 “WMPLib” 从路径为 “C:\ WINDOWS \ SYSTEM32 \的Wmp.dll”。 至少对于“IWMPGraphEventHandler.NotifyAcquireCredentials”的一个参数不能由运行时封送编组。 这种参数将因此作为指针被传递,并且可能需要不安全代码来操纵。
我想我得到了内存泄漏,但很茫然,我看在任何线程或GPU线程窗口没有在运行。
我不相信这是我的代码,是造成这一点,但是如果你想看到的代码注释,我将添加相关部分。