向activex dll (axvlc.dll)添加外部可访问的方法

Adding an externally accessible method to an activex dll (axvlc.dll)

本文关键字:dll 访问 外部 方法 activex axvlc 添加      更新时间:2023-10-16

我正在尝试修复/更新VLC ActiveX dll,但我有困难使新方法可见。

方法本身很容易编写,只是c/c++,然而在项目/dll中的某个地方是转换dll中方法和activex dll暴露的"友好名称"之间调用的胶水。

例如,它已经有一个vlcmediaddescription::get_title方法,但是当通过activex接口访问它时,它是vlc_object.mediaDescription.title

我在。idl文件中没有看到任何可以这样做的。

谁能告诉我在哪里翻译?

哎呀,这是Visual Studio 2012。

我试过使用向导,但它似乎崩溃了很多,没有产生任何有用的东西。

"像我5岁一样解释给我听"会很棒。

谢谢!

特里

已经有一段时间了,但是如果内存可用,idl文件应该创建一个定义方法和属性并为每个方法和属性分配DISPID的typelib。IDispatch(或IDispatchEx)实现应该是您实际执行响应idl文件中定义的disids的操作的地方。我认为ATL在typelib上做了一些神奇的事情,比如自动查找和调度get_*和put_*等等。否则,在IDispatch实现中,您可以在typelib中进行查找。