0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术利用COM组件远程更改设备配置文件的流程

英创信息技术 来源:英创信息技术 作者:佚名 2019-11-04 09:48 次阅读

COM(Component Object Model),即组件对象模型,是微软公司开发的一种新的软件开发技术,Microsoft的许多技术,如ActiveX、DirectX、以及OLE等都是基于COM而建立起来的。COM标准包括规范和实现两大部分,规范部分定义了组件和组件之间通信的机制,这些规范不依赖于任何特定的语言和操作系统,只要按照该规范,任何语言都可以使用; COM标准的实现部分是COM库,COM库为COM规范的具体实现提供了一些核心服务。

在COM模型中,对象本身对于客户来说是不可见的,客户请求服务时,只能通过接口进行。每一个接口都由一个128位的全局唯一标识符(GUID,Globally Unique Identifier)来标识。客户通过GUID获得接口的指针,再通过接口指针客户就可以调用其相应的成员函数。对象可以支持多个接口,因此对组件对象的升级可通过增加接口的办法实现,这样得到的新接口可以不影响老接口的使用。

COM既提出了组件之间进行交互的规范,也提供了实现交互的环境, 因为组件对象之间交互的规范不依赖于任何特定的语言,所以COM也可以是不同语言协作开发的一种标准。

有了这种跨语言设计的方法,我们就可以通过动态网页技术,也就是嵌入式主板提供的WebServer功能,利用VBScript或者JavaScript使用COM提供的接口方法,完成远程监控和远程控制功能。这样,在英创嵌入式主板上接上摄像头,就可以通过Client端浏览器进行远程监控。更有意义的是通过这种方式,还能实现远程控制。比如,通过Client端浏览器的按钮,可以实现IO控制,串口控制等。利用这种跨平台的方法,我们还可以把EVC做的工作,做成COM组件,那么像VB、C#、LaberView等就可以实现直接调用,增加了团队合作的效率。

通过ASP使用FileSystemObject对象可以对服务器中的文件进行远程操作,然而,WinCE WebServer没有支持FileSystemObject对象,本文详细介绍了通过编写COM组件,完成了FileSystemObject的部分功能,这样就实现了对嵌入式Web服务器的远程文件操作。通过对英创嵌入式主板基本信息的设置,你可以了解COM组件的创建、注册、调用等技术,使你对COM组件技术有一定的认识。以下是操作的全过程。

1、建立COM组件

1、新建EVC工程,选择WCE ATL COM AppWizard,工程名字为Scripting。

2、选择支持MFC。

3、通过ATL向导添加接口 Insert-》New ATL Objcet…,在该对话框中选择Simple Object项添加一个COM对象,点击Next按钮来设置对象名和属性。

对象名Names选项卡中主要包括两类输入信息:C++信息和COM信息。在这里,为了保持和ASP中FileSystemObject对象名字一致,我们输入名字FileSystemObject,其它信息会自动生成。

在Attributes选项卡中,我们要设置COM对象的底层特征。由于在CE中,目前只支持Free模型,所以,必须选中这一项。其它选项意义请参考相应的书籍。

4、为FileSystemObject对象添加接口方法。选中IFileSystemObject接口,右击,在弹出的快捷菜单中选择Add Method…项,为FileSystemObject对象添加接口方法。

5、为接口添加方法的对话框界面,只需在Method Name输入框中输入FileExists,在Parameters输入框中输入 [in]VARIANT v1 ,[out, retval] long * pVal,然后点击OK按钮,即可添加一个FileExists方法。这里,要注意参数的数据类型,参数的数据类型可以参考http://www.vckbase.com/document/viewdoc/?id=1488。

6、添加了FileExists方法后,就要添加FileExists方法实现代码了。在ClassView选项卡中。双击FileExists,就可以在代码窗口添加实现代码了。具体代码见EVC工程源码。

7、以同样的方法,添加其它接口方法,完成FileSystemObject对象常用方法。详见源码。

2、注册COM组件

COM组件编写并编译为DLL文件,只有向系统注册此组件后,其它语言才能够调用。注册的方法有两种:

1、用telnet登陆开发板,用regsvr32 Scripting.dll注册

2、在程序中注册。具体方法请参考Regdll EVC工程源码

3、在ASP中调用COM组件

以VBScript为例,调用COM组件对象,完成对文件的操作。

1、以为界的VBScript语言,是在Server端运行的语句,以作为开始结束标志的VBScript语言在Client端运行。所以,按“恢复默认值”按钮后,调用的函数以为标识。

2、如果要在Server端运行的VBScript语句在客户端输出提示信息,要用如下的方法:

3、创建FSO对象,并读写文件。

4、详细网页代码请参考ASP源文件。

4、综合测试

至此,我们完成了COM组件的编写和VBScript调用组件。我们提供了综合例程。通过网页配置Dbginfo.txt和Userinfo.txt两个文件,具体步骤如下:

1、把regdll.exe 和scripting.dll拷贝到Nandflash的根目录下

2、telnet登陆嵌入式主板,执行regdll

3、把DbgInfo文件夹下的所有文件拷贝到 andflashwww目录下

4、在浏览器中输入嵌入式主板的ip地址/nand/config.asp就可以看到配置网页。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6064

    浏览量

    34614
收藏 人收藏

    评论

    相关推荐

    Bluetooth蓝牙配置文件清单【产品专利认证系列】

    配置文件(GATT)显示有关下个日光节约时间更改信息。PASP电话警报状态配置文件令PUID设备可警告用户与PUID
    发表于 09-01 11:40

    ESM928xW工控主板wifi无线上网应用说明

    ESM928xW系列嵌入式Linux工控主板连接无线WiFi。  成都信息技术有限公司  http://www.emtronix.com
    发表于 01-06 15:17

    支持Linux高级客户自行移植内核

    上市)  该项服务具体说明和实施流程参见:支持客户进行Linux移植  需要该服务的客户需与签订技术保密协议,并承诺严格履行协议:
    发表于 01-18 13:52

    嵌入式主板的无线通讯解决方案

    ETA6210-WiFi√√ IntelWireless 3160WiFi√ - RalinkRT3070LWiFi√ -成都信息技术有限公司http://www.emtronix.co
    发表于 03-24 14:00

    Eclipse支持在线调试Linux应用程序

    调试linux应用程序》进行下载,也可以直接联系我们。成都信息技术有限公司http://www.emtronix.com
    发表于 03-24 16:28

    主板JAVA应用开发简介

    编译执行示意图  为了实现对Java应用程序的支持,在Linux的文件系统中移植了针对嵌入式Linux的JRE。JRE的运行需要占用的内存超过100MB,
    发表于 10-20 13:13

    你能切换BLE组件动态使用的配置文件吗?

    BootloadDead应用程序中,我可以用一个配置文件只使用BLE组件,然后在引导加载时将它转换到Bootloader版本中。 以上来自于百度翻译 以下为原文I have a fixed stack
    发表于 11-05 16:35

    信息技术设备(IT)办理CE认证指南

    近年来,(IT)信息技术设备的应用在不断的扩大,同时也逐渐成为了人们生活中不可或缺的一部分,其使用安全性及电磁兼容相关问题也成为必须考虑的一部分,认证更是该项产品质量保证的重要组成部分,不同的国家
    发表于 08-04 17:47

    信息技术设备产品如何办理3C认证

    工作条件下温升测试SELV正常和故障工作条件下的电压的测量……信息技术设备办理3C认证流程:第1步:认证申请第2步:型式试验(样品测试)第3步:初始工厂检查第4步:认证结果的评价与批准(审核发证)需要
    发表于 08-27 11:09

    AMBA® 自适应流量配置文件

    流量配置文件是对接口的事务特性的定义。AMBA自适应交通Profile(ATP)是接口动态特性的规范。AMBA ATP包括交易的类型以及这些交易的时间特征。 流量配置文件的主要用途是描述系统中主组件
    发表于 08-02 07:39

    ICD配置文件的详细介绍和配置内容的详细概述

    配置文件配置文件利用SCL语言描述变电站设备对象模型后生成的文件,用于在不同厂商的配置工具之间
    的头像 发表于 06-02 11:16 1.7w次阅读
    ICD<b class='flag-5'>配置文件</b>的详细介绍和<b class='flag-5'>配置</b>内容的详细概述

    android 电池信息文件,Android 电源配置文件

    电池使用情况信息根据电池使用情况统计信息和电源配置文件中的值计算得出。电池使用情况统计信息框架可通过跟踪设备组件在不同状态下维持的时间来自动
    发表于 01-11 09:53 4次下载
    android 电池<b class='flag-5'>信息</b><b class='flag-5'>文件</b>,Android 电源<b class='flag-5'>配置文件</b>

    如何利用apollo实现配置文件的灰度发布?

    如今,微服务架构盛行下,不管是互联网大厂,还是规模较小的团队,都有一套自己的中央配置文件管理中心,各个微服务模块都能接入中央配置文件,进行统一的使用
    的头像 发表于 02-16 10:09 782次阅读

    springboot的全局配置文件有几种

    Spring Boot是一种快速开发框架,其通过提供配置文件来实现对应用程序的配置。全局配置文件在Spring Boot中起着非常重要的作用,可以用于配置各种不同的属性,包括数据库连接
    的头像 发表于 12-03 15:28 490次阅读

    php的配置文件是什么

    PHP的配置文件是一种用于配置PHP解释器的文本文件。它包含了一系列的指令和选项,用于影响PHP的行为和性能。通过修改配置文件,可以改变PHP解释器的默认行为,从而满足不同的需求。 在
    的头像 发表于 12-04 15:55 802次阅读