(已结束)2010-11-17-工控擂台-组态软件自己开发控件的注册和调用? 点击:268 | 回复:5



饶歌

    
  • 精华:4帖
  • 求助:0帖
  • 帖子:330帖 | 6019回
  • 年度积分:0
  • 历史总积分:23673
  • 注册:2010年2月20日
发表于:2010-11-13 10:20:25
楼主
        任意组态软件,说说自己开发的控件怎么进行注册和调用?带图的话更有可能获得大奖。 

        本周末结贴,9个最优回帖分别获得20MP、10MP、10MP、10MP、20积分、20积分、20积分、20积分、20积分!

        MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

        MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。



cibsdu

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 8回
  • 年度积分:0
  • 历史总积分:38
  • 注册:2010年6月14日
发表于:2010-11-13 10:22:24
1楼

抢沙发了!!!!

 

 

 

 

 

 

 

工厂灯

abysmal

  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 2176回
  • 年度积分:6
  • 历史总积分:11194
  • 注册:2001年10月26日
发表于:2010-11-15 08:37:29
2楼
1、用VB或者C++之类的微软编程软件开发ActiveX控件;
2、在命令行用Regserver注册控件
3、在组态软件中调用

开发控件要定义好 property, method 和 event。

jingtao

  • 精华:2帖
  • 求助:0帖
  • 帖子:94帖 | 3205回
  • 年度积分:0
  • 历史总积分:20573
  • 注册:2007年10月31日
发表于:2010-11-16 16:11:32
3楼

                                     在ActiveX控件中如何动态调用DLL函数

     公司安排一项任务: 就是把对POS机操作功能封装在ActiveX控件中,在IE中调用。这样就能实现在IE上直接对POS机进行操作。
我第一想到的是用VC的ATL来实现它。你问我为什么要用ATL也不用别的,如CB、Delphi之类的。我只能说我觉得写ActiveX还是用VC好;况且还要对硬件进行操作,这样一来当然是用VC了。

   先用ATL COM AppWizard生成一个名叫PosActiveX的工程,生成时系统会问你是生成DLL还是EXE。当然是DLL的了。生成好后加入一个接口叫IPosCtrl,当然了要在Web上用,所以生成的接口一定是要小所以选择Lite Control的。接口加好后,首先用接口一般都要对其进行初始化。所以加入一个叫Init(short nCom)的接口方法,该方法完成加载DLL和DLL中的功能函数,还有就是打开对POS机进行操作的COM口;还有一个是修改POS机的时间的方法叫ModifyPosDT(BSTR bstrDT);还有个是清空POS机中数据的方法--EmptyPos()。最后,当你不想用时就要关闭所打开的COM口--Quit()。在生成接口IPosCtrl时同时会生成CPosCtrl类。一般是把实现方法都写在类中,而接口只时输出该类中你想输出的方法。所以在类中就写了以下几个方法:

InitDll()----加载DLL库和其中的功能函数;
ExitDll()----卸载DLL库,用完后不卸载是在占用内存。所以它是少不了的。
SetPosDateTime-设置POS机的时间。
ClearPos()----清空POS机中的记录。

源程序略

在类中写了几个方法有:
Init(short nCom)----初化接口,为调用做准备。
Quit()----退出程序时,调用它退出接口调用。
ModifyPosDT(BSTR bstrDT)----设置POS机时间。
EmptyPos()----清空POS机数据。

下面是调用PosActiveX.Dll的效果,调用时,要先对其进行注册,否则调用是不会成功的.注册是在"Windows的开始菜单中调用"运行",在"运行"对话框中输入:regsvr32 C:\PosActiveX\PosActiveX.dll 注册成功后就可对COM口进行操作了。还有一点是要特别注意的,必须把你要在ActiveX控件调用的Dll文件拷贝到Windows\System目录(对于Win9x系统),对于NT,2000系统就要拷贝到WINNT\System32目录下才能正确的运行。

 

莫子辰

  • 精华:1帖
  • 求助:11帖
  • 帖子:20帖 | 939回
  • 年度积分:0
  • 历史总积分:5186
  • 注册:2010年5月12日
发表于:2010-11-17 10:43:53
4楼

都是高手 自己没开发过

 

落尘

  • 精华:4帖
  • 求助:0帖
  • 帖子:330帖 | 6019回
  • 年度积分:0
  • 历史总积分:23673
  • 注册:2010年2月20日
发表于:2010-11-21 20:17:38
5楼
20MP获得者:空缺
10MP获得者:abysmal                 abysmal 
20积分获得者:惊涛骇浪               jingtao

热门招聘
相关主题

官方公众号

智造工程师