Windows CE 系统进程外组件应用开发
来源:互联网 发布:2017年外贸数据 编辑:程序博客网 时间:2024/05/01 10:41
这篇文章说明了如何使用WindowS CE 6.0系统的DCOM,开发com服务进程。向客户端提供跨进程的COM组件服务,以及自定义接口代理/存根dll的建立,注册。
假定你需要创建一个实时的控制程序,需要一直在后台运行着,而你的客户端却是多个或多样性,客户端的开发语言不确定性。这就需要创建一个COM服务进程程序。
WindowsCE镜像中需要包括DCOM组件服务
不幸的是由于系统空间的限制,很多基于Windows CE系统的OS都不支持DCOM。需要使用Platfom Builder向我们的Windows CE镜像中添加DCOM。
另外必须导出支持DCOM API的Windows CE SDK开发包。
其它的一些工具我们需要准备的注册工具
GuiRegsvrCE.exe 用于注册你的COM DLLs
这类工具可以在网上搜索到
创建COM Server
由于Windows CE不支持自动化列集/散集,因此我们需要建立自己的代理/存根,用与COM Server和Client之间的接口方法参数的列集与散集。当然,在windows XP/2000系统中,如果我们在COM方法中使用OLE兼容的数据类型,我们可以不提供代理/存根 DLL。如果需要使用自定义的数据类型则都需要建立对应的代理/存根代码,并注册之后才能使用。
由于上述原因,开发WindowsCE COM Server时,需要将IDL文件LIBRARY块中的dispinterface定义代码移到LIBRARY块外部来。所有的接口都必须在LIBRARY快的外部定义,这样MIDL编译器将生成恰当的代理/存根代码。
注意,sink dispainterface接口被重定义,被标识为dual并从IDispatch接口派生。、
代理存根DLL的创建 Proxy/Stub
和PC端的代理存根的创建差不多,需要注意的是,需要定义一些宏才能编译通过。另外定义一个def文件,注明要到处的函数。
编译好以上两个工程之后,基本上进程外COM Server工作算是完成了。在机器是使用是还需注册才行。
如何调用进程外组件(Client程序)
对应客户端而已,基本上和调用进程内组件没什么区别了。在这里我提供了一些辅助代码《EventHandler.h》,协助客户端在不使用ATL情况下接受COM Server的事件。
源代码下载: http://download.csdn.net/source/3080188
- Windows CE 系统进程外组件应用开发
- <<Windows CE 系统进程外组件应用开发 >> 文章的解读
- Windows CE 组件和开发工具
- SDRAM在windows CE系统中的应用
- 为Windows CE平台开发嵌入式系统
- Windows CE嵌入式系统程序开发
- Windows CE 进程,线程
- 嵌入式系统开发经验谈:Windows CE开发都做些什么
- WM_DEVICECHANGE在Windows CE&Mobile系统中的应用
- Qt应用如何移植到Windows CE系统上
- 加密Windows CE系统
- 加密Windows CE系统
- 加密Windows CE系统
- windows ce 系统定制
- 加密Windows CE系统
- 加密 Windows CE系统
- Windows CE 帮助系统
- 加密 Windows CE系统
- linux内核调试
- 【转】如何破解win2003“终端服务器授权”激活许可证
- 关于spring中Assert的应用,方法入参检测工具类
- DB不在本机的ArcSDE服务安装配置
- C++类的概念初步
- Windows CE 系统进程外组件应用开发
- 3gpp
- ecshop init.php 文件解读
- 连接池和 "Timeout expired"异常
- C++类的继承初步
- 比较有用的枚举方法
- js 生成和获取验证码
- Java压缩解压缩zip文件
- 编码规范之头文件