插件技术原理及其C#实现_C/C++语言_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

插件技术原理及其C#实现

作者:黑客防线网安C/C++教程基地 来源:黑客防线网安C/C++教程基地 浏览次数:0

本篇关键词:实现及其原理技术
黑客防线网安网讯:    插件是一种遵循统一的预定义接口规范编写出来的程序,应用程序在运行时通过接口规范对插件进行调用,以扩展应用程序的功能。插件在英文中通常称为plug-in、plugin或者plug in。插件最典型...

    插件是一种遵循统一的预定义接口规范编写出来的程序,应用程序在运行时通过接口规范对插件进行调用以扩展应用程序的功能插件在英文中通常称为plug-in、plugin或者plug in插件最典型的例子是Microsoft的ActiveX控件和COM(Component Object Model部件对象模型)实际上ActiveX控件不过是一个更高继承层次的COM而已。此外还有Photoshop的滤镜(Filter)也是一种比较常见的插件。
关于ActiveX和COM
在Microsoft的.Net Framework 推出的之前(大约是2003年之前吧),ActiveX和COM可是炙手可热的技术啊!在那个年代,一个顶尖的VC++高手的标志是什么?是会COM编程!不知道IUnkonw接口和QueryInterface函数,你怎么可能通过Microsoft的MCSD认证考试?
现在当然不同了,我曾经见过不少断言COM和ActiveX已经消亡或终将消亡的文章。但是不管怎么说,个人认为,ActiveX和COM代表了插件技术的最高境界,通过对ActiveX和COM的研究,我们可以对插件有更深刻的认识。
插件技术过时了吗?
COM技术的逐渐淡出,使不少程序员产生了困惑:插件技术已经过时了吗?
NO!至少我不这样认为!毕竟,没有了插件技术,我们还有什么更好的方法为应用程序提供运行时的功能扩展呢?
COM的没落自然有其原因,例如编程实在是太复杂而难以掌握,还有就是在这个病毒和木马肆虐的年代,其安全性也令人堪忧。但至少我们可以看到,插件技术的成功应用还是有的:比如PhotoShop的滤镜,比如各大主流工控软件的功能扩展。
关于ActiveX控件和COM技术的详细介绍,有兴趣的朋友不妨去“百度一下”,相信能够获得很多相关信息的。
对于插件的理解,我们应该注意以下几点:
一、插件是遵循统一的预定义接口规范编写的。
下面我以微软的ActiveX Control Test Container为大家解释一下插件的接口定义。
1、打开VS.NET 2005;
2、点击主菜单的“工具”菜单;
3、如果在“工具”菜单中未找到“Activex Test Container”,则点击“工具”-〉“外部工具”,在“外部工具”对话框的“菜单内容”列表框中,选中“Activex Test Container",然后点击右上角的"添加“按钮,再点击左下角的”确定按钮“,此步骤将在在“工具”菜单中添加“Activex Test Container”菜单项;

4、点击主菜单的“工具->Activex Test Container”菜单项,运行”Activex Test Container" ;

5、在“Activex Test Container”程序中点击“编辑->插入新控件”菜单;
6、在“插入控件”对话框中找到“日历控件 11.0" 控件,点击确定;

7、点击“控件”-〉“调用”方法,弹出“调用方法”对话框,按下图所示的方法将日历控件的背景色设置为红色;

在这里,“BackColor”是一个预定义的通用的Activex控件接口函数,用于设置控件的背景颜色。
二、应用程序是在运行时调用插件以实现功能扩展的
插件最吸引人的地方当然就是其所实现“运行时(run-time)"功能扩展。这意味着软件开发者可以通过公布插件的预定义接口规范,从而允许第三方的软件开发者通过开发插件对软件的功能进行扩展,而无需对整个程序代码进行重新编译。
运行时(run-time)是相对于编译时(assembly-time)而言的。一般来说,软件开发者对软件功能更新时,是在源代码级别进行更新,然后对整个程序进行重新编译,进而发布应用程序的新版本,这就是编译时(assembly-time)的软件更新。
三、插件技术的优缺点
运行时的软件功能扩展其优点是显而易见的:
1、对软件的开发者而言,只需对主程序和某些常用插件进行更新和维护,然后通过公布插件接口吸引第三方的软件开发者对主程序的功能进行扩展,这是一种“我为人人,人人为我”的双赢策略;

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-15148-1.html
网站维护教程更新时间:2012-04-04 22:50:50  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer