网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 网络学院 >> 程序设计 >> VB编程 >> 文章正文
  关于在vb中进行com组件的开发(一、了解com)          【字体:
关于在vb中进行com组件的开发(一、了解com)
作者:佚名    文章来源:不详    点击数:    更新时间:2007-7-1    
正在装载数据……

关于在VB中进行COM组件的开发(一、了解COM)

   

这是关于VB中学习COM的文章,我在这里发表一下我的学习经验.在我进行开发的过程中,经常用COPY的方法,来重用自己的代码.,如果在一处地方有修改,就不得不在每个重用代码的地方进行一次修改.自从学习了对象编程,就以后也没有再用COPY的方法.对象编程COM编程我觉得是差不多的.只是COM里面可以含有许多类的定义.从现在开始,COM成为你写VB CODE中的亲密朋友吧.COM就像平时我们所使用的控件一样,是已经编译好的代码,可以独立于某个应用程序发布.它的中文全称组件对象模型.常见的有activexdll,activex exe,activex控件,activex文档等.首先要清楚组件概念,组件是一些独立的程序,像VB中的FUNCTIONSUB,每个组件里面包含听代码负责完成一项功能,把大问题分成小问题来解决的方法,组件之间通过接口来相互访问,接口提供例如函数的参数、返回值等信息.供其它组件调用.对象是一个类的实例,一旦对象建立,想访问对象的内部数据必需调用对象的接口.COM是基于客户和服务器模型的.建立对象实例的程序称为客户端,对象类似服务器,可接收和处理各种来自客户的请求.客户端和服务器组件对象的交流通过三种方式分别是调用对象的属性、方法、事件(以后介绍如何建立一个类中介绍).还有一个名称叫DCOM,它是在COM上面添加了网络协议,COM对象在远程的计算机上运行,运行环境会自动确认访问远程象是否允许访问,WINDOW注册表中存放有帮助COM运行环境定位并COM对象 ,这样COM对象运行好象在本地发生一样,运行的性能部分取决于网络环境.

 

   常见的COM的储存文件有扩展名为Exe,Dll,ocx .EXE文件中存放载入内存以便运行的代码和加载的基地址信息,程序在此基地址上加载,如果此基地址不能加载就会另觅新的加载地址.DLL文件是包含多个程序中共享的各种函数和子程序的集合.这些程序可以是进程内例程,ACTIVEX DLL只有此地址空间里面才能访问,也可以是进程外例程,ACTIVEX EXE,要访问不同的地址空间,需要使用操作系统的调度技术.

 

 

    运行了一个程序把运行代码,运行所需的运行库加载进一个进程的地址空间里,通过CPU线程执行这些代码,现在我们使用的操作系统能在单CPU的硬件环境上,通过有效快速分配CPU的时间点,实现多线程技术,也就是说一个进程空间里面有多个执行线程.其实真正一个时间点上只有一个线程被启动.一个进程实线了多线程,它由一个主管线程和多个一般线程组成.线程有这样一个显著的特点:每个线程都能访问进程内的资源和自己的堆栈、CPU储存值.而且各个线程是独立运作的.

 

 

  在不同的进程和线程之间传递请求,COM中使用是很经常的事情,WINDOWS管理这些请求叫调度,例如,要访问网络上别一计算机的一进程空间的地址的数据,就是通过进程调度,其过程实现如下:调用线程把请求发送到目标机算机上的进程中的主管线程,主线程接到请求,进行处理后,返回数据给调用线程,调用线程再返回给用户,这样的方式就像同一进程地址访问一样了.

  

   

 

 

站内文章搜索 高级搜索
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
     如何在ado中使用connect…
     vb 贪吃蛇 单人版游戏 (…
     关于在vb中进行com组件的…
     用vb6.0编写自我升级的程…
     vb自动登陆网络站点详解…
     vb打造超酷个性化菜单(…
  • 关于java Applet

  • [ZT]关于用jar打包(分享)

  • java中关于时间日期操作的常…

  • 一个关于Comparator的使用例…

  • JavaWeb中的Session、Sessio…

  • 关于JSP的隐式对象的使用(供…

  • 关于Linux下C/C++程序编译

  • 关于CTreeCtrlr的=NM_DBLCL…

  • OpenCV在VC.net,VC6.0等中的…

  • 关于C#中委托的学习

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    网络学院©2007 www.23book.net
    为您提供web编程,vb编程,vc编程,服务器架设管理,数据库设计等方面的知识 站长:David