当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ActiveX 组件复习笔记.1

ASP.NET
调用另外一个同名的重载函数漏掉括号出现的严重问题
DataGrid模板列应用:在DataGrid中用CheckBox控制TextBox的Enabled属性
使用存储过程的一个小例子
.net中xmlhttp下载文件的方法参考
简单的c#文本文件读写
我的C#学习过程 第一天 安装
在数据库中开始一个事务。
用ASP.NETt实现简单的文字水印
C/S系统中三层结构(Com/Com+)的测试成功实现
VB 二进制块读写类模块应用实例,包括一个文件拷贝和一个文件二进制比较的例子。
扫雷程序“布雷”代码(vb)
关于网络连接状态的编程
c#中ref和out参数使用时需要注意的问题
use Assembly to call a method
在VBA中调用AUTOCAD打印文件
在VS.NET的
昨天折腾了一晚上,哪位高手帮我看看!急!
Net是未来的趋势吗?
如何修改自定义Webpart 的标题(downmoon)
[收藏]ASP.Net生成静态HTML页 选择自 coofucoo 的 Blog

ASP.NET 中的 ActiveX 组件复习笔记.1


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 74 ::
收藏到网摘: n/a


刚学完VB6高级编程,对于三层架构,类,ActiveX组件等方面的认识还比较模糊,
这个学期的毕业设计是用VB6+SQL Server2000开发一个进销存系统,需要用到的前面所说的知识,
当务之急就是得把前面所学的知识搞明白!希望通过复习,跟此次的毕业设计,能对VB有更深的认识(虽然我的兴趣还是WEB开发)!
另外,前段时间看了一篇讲述三层架构的文章< 三层架构与数据库编程 >,推荐给未曾看过的跟我一样学习三层体系结构的朋友!
==========================================
好了,废话说完,最后声明一下.以下复习笔记节选自一书应该建立哪种类型的部件?
对于所有的可选择的不同类型的ActiveX部件,如何来决定哪种类型的部件是最适合你的需求的呢?从功能的角度考虑这个问题,也许会给你以帮助:
1.如果需要提供服务的部件是不可视的,就要建立一个代码部件--或者是ActiveX Exe,或者是ActiveX DLL。
2.如果所需要建立的部件能够与你的应用程序运行在同一个进程中,则应该建立一个ActiveX DLL。例如,能够执行复杂计算的部件就属于这种情况。
3.如果所需要建立的部件能够服务于多个应用程序,并且能够在远程计算机上运行,则应该建立一个ActiveX EXE。例如,一个执行税务规则的业务规则服务器端,最好被实现为一个ActiveX EXE。
4.如果你需要的是一个可视的部件,并且在设计时能够被拖放到一个应用程序中,那么应该建立的是ActiveX控件。例如,一个能够正确格式化并验证电话号码的“电话号码”控件,就属于这种情况。这样的控件无疑在许多应用程序中都是有用的。
5.如果你需要的是一个可视的部件,并且在运行时能够接管应用程序的窗口,那么应该选择ActiveX文档。上面的示例显示了一个能够在Web浏览器中浏览的“销售”应用程序,它重复桌面应用程序的功能。

无论选择建立哪种类型的ActiveX部件,Visual Basic都保证它们的可重用性
==========================================
不要把使用 ActiveX 技术的部件软件开发和面向对象编程 (OOP) 混淆起来。使用 OOP 方法可以建立基于对象的软件部件;使用 ActiveX 技术可以把已创建的基于对象的部件组合起来,而这些部件可以通过许多不同的工具来创建。换一种说法就是,OOP 关心的是创建对象,而 ActiveX 关心的是使对象在一起工作。
==========================================
通过向控件增加属性页,命名常数以及事件,创建一个完善的 ActiveX 控件包将变得很容易。
既可以把 ActiveX 文档包装进进程内的部件,也可以把它包装进进程外部件。
可以使用代码部件来提供模式和非模式对话框的标准库--尽管通常代码部件都没有用户界面。
==========================================
ActiveX DLL,运行在另一个应用程序的进程之中。可以是应用程序本身,也可以是该应用程序正在使用的其他进程内的部件。
Class_Terminate事件过程中的错误是必须处理的。使用部件的应用程序不能处理Class_Terminate中的错误,所以这些错误对于应用程序来说将是致命的。
与此相反,在Initialize事件中没有处理的错误是在应用程序创建该对象时发生的,因此可以被应用程序处理。
Initialize 和 Terminate 事件决不应该与用户打交道。
按 F2 键打开“对象浏览器”。
当 ActiveX 部件接受到第一个请求其提供的对象的时候,它要执行其 Sub Main 过程,这在部件创建对象之前。Sub Main 过程应该尽可能地简短,因为 Sub Main 的执行时间过长可能导致创建对象的请求超时。
单击窗体右上角关闭按钮,会执行任何对象的 Terminate 事件。要记住,如果用“结束”按钮或者通过代码中的 End 语句来结束程序,程序将立即中止,不会执行任何对象的Terminate事件。一般来说,通过卸载所有窗体来关闭程序是更好的方式。