Activex控件相关
近期,实验室在做一项数控机的开发,简单了解了一些关于Activex控件,SAP系统的RFC接口调用,C#如何连接SAP系统的相关知识,在这上面花了蛮多时间,记录一点,能获得些许收获也是不错。
SAP系统
SAP 全称:systems,applications,and products in data processing
SAP R/3 是一个基于客户/服务机结构和开放系统的、集成的企业资源计划系统。其功能覆盖企业的财务、后勤(工程设计、采购、库存、生产销售和质量等)和人力资源管理、SAP业务工作流系统以及因特网应用链接功能等各个方面。
R/3应用软体采模组化结构。它们既可以单独使用,也可以和其它解决方案相结合。从流程导向的角度而言,各应用软体间的整合程度越高,它们带来的好处就越多。
RFC
SAP R/3的接口方式主要有RFC、IDOC、BAPI三种。
RFC分二种:1 正常的本地RFC。2 远程RFC(外部系统调用)。
RFC可以理解成一个函数,它有输入、输出,改变,排除 参数,表(既可以输入也输出)。
RFC(Remote Function Call,远程功能调用)是SAP系统之间以及SAP与外部系统之间程序通信的基本接口技术,诸多其他更高层的SAP接口和通信技术,如BAPI、ALE等,都是基于RFC实现的。在SAP中,可以提供给其他系统进行远程调用的程序模块是支持RFC的功能模块,即RFM(remote-enabled function module,支持远程调用的功能模块)。
RFC是SAP系统和其他(SAP或非SAP)系统间的一个重要而常用的双向接口技术,也被视为SAP与外部通信的基本协议。简单地说,RFC过程就是系统调用当前系统外的程序模块,从而实现某个功能,而且调用系统和被调用系统中至少有一个必须是SAP ABAP系统。这种远程功能调用也可在同一系统内部进行(如本地SAP系统内的远程调用);但通常情况下,调用程序和被调用程序处于不同系统。
Activex控件
Activex是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。
在创建包括ActiveX程序时,主要的工作就是组件,一个可以自足的在ActiveX网络(现在的网络主要包括Windows和Mac)中任意运行的程序。这个组件就是ActiveX控件。
ActiveX是Microsoft为抗衡Sun Microsystems的JAVA技术而提出的,此控件的功能和java applet功能类似。
自我理解:Activex就是一组自定义的供调用的一组组件。
VB中Activex控件中分为两类
- OCX:包含界面,可供其他窗体程序调用
- DLL:不含界面,可以封装方法,供其他程序调用。
注意点:DLL必须先要注册,如果不在工程中引用DLL,可以用CreateObject(""),反之,使用new对象的话,必须在工程中引用。