首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > 多媒体 >

如何VB编程调用视频解码器ax文件

2012-11-06 
怎么VB编程调用视频解码器ax文件①用eXeScope看了一个ax文件,发现实质是一个DLL,而且应该是一个Com Dll。导

怎么VB编程调用视频解码器ax文件
①用eXeScope看了一个ax文件,发现实质是一个DLL,而且应该是一个Com Dll。导出表里面除了有Com Dll的几个规定的函数,就没有别的东西了。那么ax文件就完全是一个Dll吗?只是改了拓展名而已,还是在他的某一些方面还是和Dll不一样的*(不论是文件本身,还是他的注册,调用它的方法等等各个方面)。例如:如果我想自己写一个编解码器,就是写一个Dll然后把拓展名改一下就是了吗?

②我想着,如果是Com Dll可能可以直接在VB的引用哪里打开它并引用它,却发现不行。没有别的办法了吗?怎么才能知道里面的函数原型和调用方法?即使知道了函数原型,就像调用普通的Dll一样调用就可以了吗?没别的附加“手续”了??

③谁有这方面的参考资料的,也希望提供一些给我。

红色的是问题的重点。快来人吧,谢谢了

[解决办法]
ax就是一个dll,编译的时候输出类型都是dll格式的。

如果你只拿到ax文件,不知道接口文档的话,你是无法使用的。他的输出函数只有五个,内部实现都是通过接口的。

知道接口信息的话,我建议你了解一下directshow,然后你就知道该怎么用了。
[解决办法]
是什么filter,完成什么功能,是否有头文件。一般简单的filter没有接口
直接调用,类型匹配上就可以了
[解决办法]
注册前先导出目前系统的已经注册的Filter的GUID列表,注册该ax后再导出已经注册的Filter的GUID列表,比对2张列表就可以知道该ax的GUID,之后通过该GUID用ComImport就能将该Filter加入你的代码使用了。
[解决办法]
如果没记错,那5个函数其实是COM接口的标准函数。
DLLMain
DllGetClassObject
DllCanUnloadNow
DllRegisterServer
DllUnRegistrerServer

把微软官方的DirectShow的SDK下下来看吧。先了解DirectShow技术再做事。

热点排行