请教插件技术--插件是怎样告诉主程序它的功能以及与主程序交流的呢?

时间:2021-05-27 16:08:28
我想写个支持插件技术的软件,可我到现在还不知道插件是怎样具体与主程序交流的呢?我怎样知道插件有能做什么,拥有什么样的功能,还有我主程序在什么时候调用它呢?
  请各位大侠讨论讨论,或在什么地方有相关资料的话请告诉。
小弟在此先谢谢各位啦!!!
小弟只有54分,请热烈讨论,我会继续加分的。
thx

5 个解决方案

#1


插件(Plug-In)?是什么插件呢
www.applevb.com

#2


可以这样做,插件做为一个DLL文件存放在一个特写目录,在编写时导出特写的函数或过程,在需要配置时主程序加载所选DLL(当然也可事先加载,通过类似于getname的函数获取插件名,版本号及作者等)列出插件名,供用户选择.在实际启动插件时可以调用一个通用的函数比如一个播放器的插件可以有一个play函数,不同的DLL可以播放不同的格式.我说清楚了吗?

#3


找一下lhxxx,它给我一个有关COM的插件例子!

#4


如果是象Shell扩展这样的插件技术的实现是这样的:
首先定义若干接口,然后建立一个实现这些接口中方法的COM服务器组件,然后注册
客户程序,也就是插件宿主会调用插件中的接口。这样的范例很多,看看这篇我
写的文章:
http://www.csdn.net/develop/read_article.asp?id=3382
www.applevb.com

#5


最重要的问题就是要在写程序之前制定好插件的公共接口

#1


插件(Plug-In)?是什么插件呢
www.applevb.com

#2


可以这样做,插件做为一个DLL文件存放在一个特写目录,在编写时导出特写的函数或过程,在需要配置时主程序加载所选DLL(当然也可事先加载,通过类似于getname的函数获取插件名,版本号及作者等)列出插件名,供用户选择.在实际启动插件时可以调用一个通用的函数比如一个播放器的插件可以有一个play函数,不同的DLL可以播放不同的格式.我说清楚了吗?

#3


找一下lhxxx,它给我一个有关COM的插件例子!

#4


如果是象Shell扩展这样的插件技术的实现是这样的:
首先定义若干接口,然后建立一个实现这些接口中方法的COM服务器组件,然后注册
客户程序,也就是插件宿主会调用插件中的接口。这样的范例很多,看看这篇我
写的文章:
http://www.csdn.net/develop/read_article.asp?id=3382
www.applevb.com

#5


最重要的问题就是要在写程序之前制定好插件的公共接口