来源:http://www.blogjava.net/Jack2007/archive/2008/04/27/196392.html         熟悉面向对象编程和网络编程的人一定对ActiveX.OLE和COM/DCOM这些概念不会陌生,但是它们之间究竟是什么样的关系,对许多们还是 比较模糊的.在具体介绍它们的关系之间,我们还是先明确组件(Component)和对象(Object)之间的区别.         组件是一个可重用的模块,它是由一 组处理过程.数据封装和用户接口组成的业务对象(…
熟悉面向对象编程和网络编程的人一定对ActiveX.OLE和COM/DCOM这些概念不会陌生,但是它们之间究竟是什么样的关系,对许多们还是比较模糊的.在具体介绍它们的关系之间,我们还是先明确组件(Component)和对象(Object)之间的区别. 组件是一个可重用的模块,它是由一组处理过程.数据封装和用户接口组成的业务对象(Rules Object).组件看起来像对象,但不符合对象的学术定义. 它们的主要区别是: 1)组件可以在另一个称为容器(有时也称为承载者或宿主)的应用程序中使用,也可以…
转自:http://baike.baidu.com/view/393671.htm 创建COM:http://blog.csdn.net/henry000/article/details/7008397#t9 概述 .ocx是ocx控件的扩展名,与.exe .dll同属于PE文件.下面说说什么是ocx控件! OCX 是对象类别扩充组件. 如果你用过Visual Basic或者Delphi一类的可视化编程工具,那么对控件这个概念一定不会陌生,就是那些工具条上的小按钮,如EditBox,Grid,I…
  OLE(Object Linking and Embedding,对象连接与嵌入) 一.过去的OLE和今天的OLE 最初的OLE含义是指在程序之间链接和嵌入对象数据,它提供了建立混合文档的手段(资深Windows 3.X 用户可能记得当初在Word6.0中插入一个图形的新奇和喜悦),使得那些没有太多专业知识的用户能够很容易地协调多个应用程序完成混合文档的建立.1991年制定的OLE1.0规范主要解决多个应用程序之间的通信和消息传递问题,微软希望第三方开发商能够遵守这个规范,以使在当时的Win…
本文作者:i春秋作家——cq5f7a075d 也许现在还研究Activex就是挖坟,但是呢,笔者是摸金校尉,挖坟,呸!盗墓是笔者的本职工作. 额,不扯了,本次研究的是阿里旺旺ActiveX控件imageMan.dll栈溢出漏洞,来源于<漏洞战争>一书,书中简单介绍了漏洞情况,没有详述.笔者在研究过程中产生了很多疑问,比如为什么要在DispCallFunc函数处下段?为什么覆盖SEH,能不能使用覆盖返回地址的方式进行漏洞利用? 随着笔者研究的深入,愈发感觉此洞的精妙之处,真是恨不得立即和大家分享…
http://www.cnblogs.com/railgunman/archive/2010/11/29/1891200.html 主程序与DLL之间的全局变量问题   有几个朋友经常向我问题在DLL中怎么共用一个全局变量.比如像用户登陆后的用户名(UserName)... 其实这个问题很简单.下面我把我的做法写出来大家一起分享. 把共享的变量放在主程序里:UserName,....等等, 在主程序里写两个函数 Function CurUserName():PChar; begin Result…
<%@page include%>.<%@include%>.<jsp:include>三者之间的本质区别 先从它的几个内置对象说起. application和session比较简单,这里主要说明request和page的作用范围. application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止. session:会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态.生命周期:…
之前在做一个采集的工具,实现采集回来的文章,图片保存起来.文章内容是保存在数据库,图片是先需要上传到图片服务器,再返回图片地址,替换掉文章的图片地址. 问题来了:都能成功采集都东西,但是,本地测试是正常的,图片也可以上传成功,但是生产环境就是一直没有图片.然后自己就一步一步调试,,发现数据都有,但为什么偏偏生产上没有成功上传图片呢. 后来折腾了几天,经过一步步的看代码,调试,百度,终于找到答案了.真是一个大坑. 上传到图片服务器是用curl post过去的, PHP的cURL支持通过给CURL_…
Exception和IOException之间的使用区别 先看一段代码.这段代码来自<深入剖析tomcat>   public void await() { // 创建ServerSocket对象 InetAddress add = null; ServerSocket ss = null; try { add = InetAddress.getByName(LOCAL); ss = new ServerSocket(port, blocklog, add); } catch (IOExcep…
DIV与SPAN之间有什么区别 DIV 和 SPAN 元素最大的特点是默认都没有对元素内的对象进行任何格式化渲染.主要用于应用样式表(共同点). 两者最明显的区别在于DIV是块元素,而SPAN是行内元素(也译作内嵌元素). 详解:1.所谓块元素,是以另起一行开始渲染的元素,行内元素则不需另起一行,测试一下下面的代码你会有更形象的理解: 测试<span>紧跟前面的"测试"显示</span><div>这里会另起一行显示</div> 2.块元素…
目录结构: 关键性代码: beans.xml <!-- ★bean的作用域 可以通过scope属性来指定bean的作用域 -singleton:默认值.当IOC容器一创建就会创建bean的实例,而且是单例的,每次得到的都是同一个 -prototype:原型的.当IOC容器一创建不再实例化该bean,每次调用getBean方法时再实例化该bean,而且每调用一次创建一个对象 -request:每次请求实例化一个bean -session:在一次会话中共享一个bean --> <bean i…
AWT和Swing之间的基本区别:AWT 是基于本地方法的C/C++程序,其运行速度比较快:Swing是基于AWT 的Java程序,其运行速度比较慢. 对于一个嵌入式应用来说,目标平台的硬件资源往往非常有限,而应用程序的运行速度又是项目中至关重要的因素. 在这种矛盾的情况下,简单而高效的AWT 当然成了嵌入式Java的第一选择. 而在普通的基于PC或者是工作站的标准Java应用中,硬件资源对应用程序所造成的限制往往不是项目中的关键因素,所以在标准版的Java中则提倡使用Swing, 也就是通过牺…
WebSocket和Socket区别 可以把WebSocket想象成HTTP(应用层),HTTP和Socket什么关系,WebSocket和Socket就是什么关系. HTTP 协议有一个缺陷:通信只能由客户端发起,做不到服务器主动向客户端推送信息. WebSocket 协议 它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种 socket和http的区别:Http协议:简单的对象访问协议,对应于应用层.Http协议…
spring bean 的作用域之间有什么区别? spring容器中的bean可以分为五个范围.所有范围的名称都是说明的, 1.singleton:这种bean范围是默认的,这种范围确保不管接受到多个请求,每个容器中有一个bean的实例,单利模式由bean factory自身来维护. 2.Protype:原先通过范围与单例范围相反,为每一个bean请求提供一个实例. 3.request:在请求bean范围内会每一个来自客户端的网络请求创建一个实例,在请求完成之后,bean会失效并被垃圾回收器回收…
java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)…
Cookie与Session之间有哪些区别或者是优缺点? 知道了Cookie与Session,我们来做一些简单的总结:   1.Cookie可以存储在浏览器或者本地,session只能存在服务器   2.session比cookie更具有安全性   3.因为Session是存储在服务器当中的,所以Session过多,可能会对服务器产生压力.在我看来,Session的生命周期算是减少服务器压力的一种方式.   4.单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个coo…
任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK.JRE和JVM三者的联系和区别是什么?我也找了套相关的视频,大家可以参考一下,如果文字看不下去的,也可以直接看以下视频理解>>> Java中JDK.JRE和JVM三者之间有什么区别和联系?Java基础!Java300集零基础适合初学者视频 Java中JDK.JRE和JVM三者的概念分别是什…
先明确组件(Component)和对象(Object)之间的区别: 组件是一个可重用的模块,它是由一组处理过程.数据封装和用户接口组成的业务对象(Rules Object).组件看起来像对象,但不符合对象的学术定义. 它们的主要区别是: 1)组件可以在另一个称为容器(有时也称为承载者或宿主)的应用程序中使用,也可以作为独立过程使用: 2)组件可以由一个类构成,也可以由多个类组成,或者是一个完整的应用程序: 3)组件为模块重用,而对象为代码重用.现在,比较流行的组件模型有COM(Component…
小小抱怨下:也许是MFC现在用的人少的缘故.在国内和国外都基本上找不到什么全的资料.特别是ocx打包成Cab时的安装文件inf的编写方面,国内基本上是copy,抄的还一知半解.查找个资源真心的累啊.现在将编写步骤和遇到的问题以及问题的解决办法记录下来.有的资源是参考了别人的博文,有引用的地方将附上连接,再次感谢这些博主,如有侵权,请联系本人,立即删除. 一.MFC Activex 项目的构建 此处使用的是:vs2015,操作按照图片顺序,没有特别注意的地方不做文字注释了.(不详细的地方可以参考:…
WebForm分为两个文件aspx和aspx.cs,aspx是页面模板,是页面描述文件,就是html的内容,和aspx结合的更好,不用像一开始那样程序员自己去填充模板,控件都是定义在aspx中,内联的JavaScript.CSS也是写在aspx中的,,服务端的C#代码是定义在aspx.cs中.aspx控件页面长相,cs控制程序逻辑,这种"前aspx后cs"的方式就被称为CodeBehind.aspx就是模板引擎 cs可以调用aspx中的控件,aspx中也可以访问cs中定义的字段.函数,…
http://www.cnblogs.com/likwo/archive/2012/05/09/2492225.html 动态链接,在可执行文件装载时或运行时,由操作系统的装载程序加载库.大多数操作系统将解析外部引用(比如库)作为加载过程的一部分.在这些系统上,可执行文件包含一个叫做import   directory的表,该表的每一项包含一个库的名字.根据表中记录的名字,装载程序在硬盘上搜索需要的库,然后将其加载到内存中预先不确定的位置,之后根据加载库后确定的库的地址更新可执行程序.可执行程序…
动态链接,在可执行文件装载时或运行时,由操作系统的装载程序加载库.大多数操作系统将解析外部引用(比如库)作为加载过程的一部分.在这些系统上,可执行文件包含一个叫做import   directory的表,该表的每一项包含一个库的名字.根据表中记录的名字,装载程序在硬盘上搜索需要的库,然后将其加载到内存中预先不确定的位置,之后根据加载库后确定的库的地址更新可执行程序.可执行程序根据更新后的库信息调用库中的函数或引用库中的数据.这种类型的动态加载成为装载时加载   ,被包括Windows和Linux…
闲来无事列了个表比对一下这3兄弟之间还是有一点差距的╮(╯_╰)╭   DateTime DateTime2 DateTimeOffset 日期范围 1753-01-01到 9999-12-31 0001-01-01 到 9999-12-31 0001-01-01 到 9999-12-31 时间范围 00:00:00 到 23:59:59.997 00:00:00 到 23:59:59.9999999 00:00:00 到 23:59:59.9999999 存储字节大小 8字节 精度小于 3 时…
问题描写叙述: 在计算机科学中,并查集是一种树型的数据结构,其保持着用于处理一些不相交集合(Disjoint Sets)的合并及查询问题.有一个联合-查找算法(union-find algorithm)定义了两个操作用于此数据结构: Find:确定元素属于哪一个子集.它能够被用来确定两个元素是否属于同一子集: Union:将两个子集合并成同一个集合: 实现并查集的关键是实现union-find algorithm, 本文依据经常使用的四种算法,实现了这个类,详细算法实现请參看维基百科: 制造測试…
ASP.NET的控件包括WEB服务器控件.WEB用户控件.WEB自定义控件.HTML服务器控件和HTML控件.HTML控件.HTML服务器控件和WEB服务器控件之间的区别如下所示.q      HTML控件:这完全是浏览器端的HTML标签控件,例如HTML中常见的单选框表单控件,其HTML代码如以下代码所示.<input type="radio" id="Radio1" value="select1" checked="check…
最近项目中本地测试环境遇到了windows环境下的nginx使用file_get_contents/curl访问php文件导致的阻塞问题,一直在找解决的方案,这个问题研究了三天终于找到了解决方案,特别因为这个我也对php的运行原理产生了兴趣,所以这里对此进行一定程度的记录,可能会有错漏的地方,欢迎指正. 要了解php的运行原理,首先要了解下面几个概念: CGI: CGI的英文是(COMMON GATEWAY INTERFACE)公共网关接口,它的作用就是帮助服务器与语言通信,这里就是nginx和…
ARM架构:  由英国ARM公司设计的一系列32位的RISC微处理器架构总称,现有ARMv1~ARMv8种类. ARM7:       一类采用ARMv3或ARMv4架构的,使用冯诺依曼结构的内核. ARM9:       一类采用ARMv4或ARMv5架构的,使用哈佛结构的内核. Cortex M3: 采用了ARMv7架构的,使用哈佛结构的内核. Cortex M4: 采用了ARMv7架构的,使用哈佛结构的内核.(较前者最大区:别增加了一个DSP处理功能,SIMD单指令多数据功能.其他区别请自…
File协议主要用于访问本地计算机中的文件,就如同在Windows资源管理器中打开文件一样,基本的格式如下:file:///文件路径. FTP是文件传输协议,可以用于互联网上.例如,你有一个网站,放在某个服务器上,可以通过FTP来访问服务器上的文件. HTTP 协议定义服务器端和客户端之间文件传输的沟通方式.…
闲来无事列了个表比对一下这3兄弟之间还是有一点差距的╮(╯_╰)╭   DateTime DateTime2 DateTimeOffset 日期范围 1753-01-01到 9999-12-31 0001-01-01 到 9999-12-31 0001-01-01 到 9999-12-31 时间范围 00:00:00 到 23:59:59.997 00:00:00 到 23:59:59.9999999 00:00:00 到 23:59:59.9999999 存储字节大小 8字节 精度小于 3 时…
转载自http://blog.csdn.net/john2522/article/details/7436307/ struts2不是struts1的升级,而是继承的webwork的血统,它吸收了struts1和webwork的优势. 先看struts的Action官方注释(struts1.3.8源代码) /**  * <p>An <strong>Action</strong> is an adapter between the contents of an  * in…