Windows CE 系统进程外组件应用开发

本文详细介绍了如何在 windows ce 6.0 系统上开发 dcom 服务进程,以提供跨进程的 com 组件服务,并创建和注册自定义接口代理/存根 dll。

假设您需要开发一个实时控制程序,该程序需要在后台持续运行,而客户端可能多样且使用不同的开发语言。这就需要创建一个 COM 服务进程程序。

在 Windows CE 镜像中,必须包含 DCOM 组件服务。然而,由于系统空间限制,许多基于 Windows CE 的操作系统不支持 DCOM。您需要使用 Platform Builder 向 Windows CE 镜像中添加 DCOM。此外,还必须导出支持 DCOM API 的 Windows CE SDK 开发包。

其他必备工具包括用于注册 COM DLL 的 GuiRegsvrCE.exe,这类工具可以在网上找到。

创建 COM Server

由于 Windows CE 不支持自动化封送/解封送,我们需要为 COM Server 和 Client 之间的接口方法参数创建自己的代理/存根。在 Windows XP/2000 系统中,如果 COM 方法使用 OLE 兼容的数据类型,我们可以不提供代理/存根 DLL。但如果使用自定义数据类型,则需要创建并注册相应的代理/存根代码。

在开发 Windows CE COM Server 时,需要将 IDL 文件中的 LIBRARY 块中的 dispinterface 定义移到 LIBRARY 块外部。所有接口都必须在 LIBRARY 块外部定义,这样 MIDL 编译器才能生成正确的代理/存根代码。

注意,sink dispinterface 接口需要重新定义为 dual 并从 IDispatch 接口派生。

[object, uuid(8D2D2A49-E8D3-4630-924D-1F83A4B063DB), dual, nonextensible, helpstring("IAlgorithm 接口"), pointer_default(unique)] interface IAlgorithm : IDispatch{    [id(1), helpstring("方法Add")] HRESULT Add([in] LONG n1, [in] LONG n2, [out,retval]LONG* nVal);    [id(2), helpstring("方法Minus")] HRESULT Minus([in] LONG n1, [in] LONG n2, [out,retval] LONG* nVal);    [id(3), helpstring("方法Input")] HRESULT Input([in] BSTR str);};

ifdef UNDER_CE

[uuid(C33B6BCD-ABBB-4E80-8E55-F34CC867BE83), dual, helpstring("_IAlgorithmEvents 接口")] interface _IAlgorithmEvents : IDispatch{//properties://methods:[id(1), helpstring("方法Output")] HRESULT Output([in] BSTR str);};

endif //UNDER_CE

[uuid(4EC8BE3C-DF5C-4E56-B1F5-9350266E32FC), version(1.0), helpstring("ServDemo 1.0 类型库")] library ServDemoLib{importlib("stdole2.tlb");interface IDocHostUIHandlerDispatch;interface IAxWinAmbientDispatchEx;

#ifndef UNDER_CE[uuid(C33B6BCD-ABBB-4E80-8E55-F34CC867BE83), helpstring("_IAlgorithmEvents 接口")] dispinterface _IAlgorithmEvents{    properties:    methods:};#endif //UNDER_CE[uuid(9EEFFB69-1604-4DA2-A12A-FAB65CE9D587), helpstring("Algorithm Class")] coclass Algorithm{    [default] interface IAlgorithm;    [default, source] dispinterface _IAlgorithmEvents;};

};

代理存根 DLL 的创建

AppMall应用商店 AppMall应用商店

AI应用商店,提供即时交付、按需付费的人工智能应用服务

AppMall应用商店 56 查看详情 AppMall应用商店

创建代理存根 DLL 与 PC 端类似,但需要定义一些宏才能编译通过,并定义一个 def 文件,注明要导出的函数。

// dlldata.c 的包装

define REGISTER_PROXY_DLL //DllRegisterServer 等

ifndef _WIN32_WCE

define _WIN32_WINNT 0x0400//对于 WinNT 4.0 或安装了 DCOM 的 Win95

else

define WIN32

endif

define USE_STUBLESS_PROXY//仅当使用 MIDL 开关 /Oicf 时定义

ifndef _WIN32_WCE

pragma comment(lib, "rpcns4.lib")

endif

pragma comment(lib, "rpcrt4.lib")

//#define ENTRY_PREFIXPrx

include "dlldata.c"

include "ServDemo_p.c"

编译完成后,进程外 COM Server 的开发基本完成,但需要在机器上注册才能使用。

如何调用进程外组件(Client 程序)

对于客户端,调用进程外组件与调用进程内组件基本相同。我提供了一些辅助代码《EventHandler.h》,帮助客户端在不使用 ATL 的情况下接收 COM Server 的事件。

Windows CE 系统进程外组件应用开发

源代码下载:https://www.php.cn/link/85d52e4d4b40d62fa159037686630a7c

以上就是Windows CE 系统进程外组件应用开发的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/514803.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 02:35:35
下一篇 2025年11月9日 02:38:55

相关推荐

  • 比特币暴涨暴跌怎么预判?专业美元图表软件免费开放体验

    在数字资产领域,准确预判市场走势是成功的关键。本文将向您介绍币安app,这是一款功能强大的专业美元图表软件,旨在帮助用户深度分析比特币及其他主流数字货币的暴涨暴跌趋势。作为全球领先的数字资产交易平台,币安app不仅提供实时行情数据、专业的k线图分析工具,还集成了便捷的交易功能。本文将为您提供官方币安…

    2025年12月8日
    000
  • 买币选比特币BTC还是选以太坊ETH好?差别大吗?

    很多刚入圈的新手都会纠结:买币到底选比特币btc还是以太坊eth?这两种币种都属于主流币,也是市场上认可度最高的两类资产,但它们的定位、应用与上涨逻辑各不相同。 比特币:价值储备属性更强 比特币被称为“数字黄金”,它的总量固定、去中心化程度高,是目前全球接受度最高的虚拟货币。很多人选择BTC作为长期…

    2025年12月8日
    000
  • 比特币官网登录入口查询 正规数字货币账户登录指引

    选择合适的数字货币交易平台是数字资产管理中的关键一环。一个优质的平台能够提供流畅的交易体验、坚固的安全保障以及全面的服务支持。以下是一些在全球范围内具有较高影响力的交易平台,它们在各自领域展现出显著的竞争力。 平台排名与特色 以下排名基于市场活跃度、用户基数、交易量及行业影响力等多个维度进行综合考量…

    2025年12月8日 好文分享
    000
  • USDT稳定币买卖教程 从注册到交易的完整流程解析

    usdt,作为一种锚定美元的稳定币,在数字资产交易领域扮演着关键角色。它的价值波动小,为用户提供了规避市场剧烈波动、进行资产保值与转移的便利。本教程旨在详细阐述从注册到买卖usdt的完整操作流程,帮助用户清晰掌握相关步骤。 选择合适的交易平台 选择一个可靠且安全的交易平台是进行USDT买卖的第一步。…

    2025年12月8日 好文分享
    000
  • btb最佳交易平台排行榜 btb全球最佳交易所手机APP前五名推荐

    在数字资产交易日益普及的当下,选择一款功能强大、安全可靠的手机应用程序成为了众多投资者关注的焦点。这些应用程序不仅提供了便捷的交易途径,更是连接全球数字货币市场的桥梁。它们将复杂的交易流程简化,让用户能够随时随地进行资产管理、市场分析以及各类数字货币的买卖。一个卓越的交易应用应具备流畅的用户界面、高…

    2025年12月8日 好文分享
    000
  • 十大热门虚拟币交易app 全球十大加密货币交易平台

    在数字经济浪潮中,加密货币交易平台扮演着关键角色,它们是连接用户与数字资产世界的桥梁。随着虚拟货币市场的日益壮大,选择一个安全、可靠、功能丰富的交易平台变得至关重要。这些平台不仅提供数字货币的买卖服务,更是用户进行资产管理、参与新兴金融活动的核心枢纽。一个优质的交易平台通常具备强大的技术基础设施、深…

    2025年12月8日 好文分享
    000
  • 永续合约爆仓机制揭秘:为何价格波动会触发自动强平?

    永续合约爆仓机制的核心在于保证金与杠杆之间的脆弱平衡,具体表现为:1. 投资者使用高杠杆(如10倍或20倍)时,仅需少量保证金即可控制大额头寸,但亏损风险同样被放大;2. 当账户权益触及维持保证金水平时,系统会触发强制平仓以控制风险;3. 标记价格机制用于判断爆仓,而非最新成交价,以防止市场短期操纵…

    2025年12月8日
    000
  • 币安交易所APP最新版本下载 必安Binance官网版v2.105.3安装包

    币安binance作为全球领先的数字资产交易平台,致力于为用户提供安全、便捷、高效的数字货币交易服务。这款官方应用程序集行情查看、币币交易、合约交易、理财等多种功能于一体,让您随时随地掌握市场动态,轻松进行资产管理。本文将为您提供官方币安binance app的下载链接,点击本文提供的下载链接即可安…

    2025年12月8日
    000
  • btb今日行情APP推荐 btb今日行情价格查看软件官方汇总

    全景行情通、BTB快讯宝、环球数据眼是三款优秀的BTB行情查看软件。1、全景行情通适合专业投资者,具备深度数据分析功能,支持多指标K线图、权威数据源对接、自定义预警及技术分析工具;2、BTB快讯宝操作简便,适配多终端,提供个性化界面设置与流畅交互体验,适合新手和效率型用户;3、环球数据眼主打数据安全…

    2025年12月8日
    000
  • 币圈 “黑天鹅” 下的爆仓潮:散户如何避免被强制平仓?

    避免币圈爆仓需采取多项风控措施。1. 控制杠杆比例,建议新手使用3倍以下杠杆并动态调整;2. 设置止损线,控制在总资金5%-10%,避免全仓模式;3. 保持充足保证金,至少覆盖2倍维持保证金,必要时补仓;4. 远离高波动时段,关注市场恐慌指数减少操作;5. 分散投资与对冲,配置稳定币比例不低于30%…

    2025年12月8日
    000
  • 加密货币平台手续费计算工具推荐榜单前十名盘点(2025最新榜单)

    选择合适的加密货币手续费计算工具可提升投资效率。本文推荐了2025年最新的前十名工具,涵盖主流平台如欧意OKX、Binance必安等,支持多种币种及高级功能,并强调数据更新及时性与操作便捷性。1. CoinTool.app适合新手;2. Fees.wtf专注以太坊生态;3. CoinMarketCa…

    2025年12月8日
    000
  • 怎么才能直接买虚拟币 虚拟币购买平台推荐

    许多刚接触虚拟币的新手会问:能不能用微信或支付宝直接买币?答案是:可以,但有前提条件,并不是像普通网购那样直接操作,而是通过平台提供的“法币交易”功能完成 法币购买机制:微信/支付宝作为支付工具 在币安、欧易等主流平台上,用户可以通过法币区购买USDT、BTC、ETH等币种,微信、支付宝、银行卡转账…

    2025年12月8日
    000
  • 1比特币多少钱?BTC突破12万美元,未来比特币价格会是多少?

    比特币价格突破12万美元,创历史新高,市场关注度提升。1. 主流交易所如OKX、Binance、HTX及Gate.io报价均超12万美元,成交量增长;2. OKX、Binance等官网提供实时行情与多语言服务;3. 比特币波动率升至6.2%,自2024年初已上涨超80%;4. 机构预测2025年底或…

    2025年12月8日
    000
  • 在哪里才能买到比特币?正规比特币交易平台推荐

    想买比特币,第一步就是选择一个安全、合规、功能完善的交易平台。对于新手来说,通过正规平台购买不仅更安全,而且流程清晰,支持中文界面和本地支付方式。 推荐一:币安 —— 全球最大交易所,支持微信/支付宝付款 币安是目前全球用户最多、交易量最大的比特币交易平台,支持法币交易,使用微信、支付宝均可快速购入…

    2025年12月8日
    000
  • 比特币最新行情走势APP有哪些?比特币最新行情走势预测APP前五名推荐

    本文推荐了五款顶级比特币行情APP。1、币安:提供实时数据、价格预警、多端适配和一体化生态;2、OK:具备顶级K线图、复杂预警系统、多端同步和强大社区;3、CoinGecko:整合广泛数据、简单预警、界面友好和全面信息聚合;4、非小号:支持钱计价、个性化提醒、符合国内用户习惯和特色数据功能;5、In…

    2025年12月8日
    000
  • 免费看比特币行情网站入口

    在数字货币市场中,及时获取比特币行情信息对投资者至关重要。许多平台提供免费的实时行情数据,帮助用户跟踪价格波动、交易量变化以及市场趋势。以下是一些主流的比特币行情网站入口,涵盖全球知名交易所的行情数据与分析工具。 1. Binance 全球交易量最大的加密货币交易所,提供丰富的比特币行情数据与图表工…

    2025年12月8日 好文分享
    000
  • 去中心化身份验证普及:Web3隐私保护的新篇章?

    去中心化身份验证(DID)平台正成为Web3身份管理的核心工具,本文盘点了10大主流DID平台及其隐私优势与使用路径,并列举了4个主流Web3平台的DID入口方式。推荐的DID平台包括ENS、Unstoppable Domains、Polygon ID等,各自具备兼容性强、隐私保护好、开发灵活等特点…

    2025年12月8日
    000
  • 欧易OKX官网入口 欧易网页版交易平台

    欧易OKX是全球领先的数字资产交易平台,提供安全稳定的加密货币交易服务。1. 平台拥有强大的技术团队和丰富的运营经验,服务覆盖全球,信誉良好;2. 核心产品包括现货交易、衍生品交易和金融服务,满足不同用户需求。 欧易OKX是全球知名的数字资产服务平台,为全球用户提供安全、稳定的加密货币交易服务。平台…

    2025年12月8日
    000
  • 币安网页版官网入口 Binance官方版登录地址

    币安是全球领先的数字资产交易平台,以安全可靠著称。1. 提供数百种加密货币的现货、杠杆及合约交易,满足多样投资需求。2. 高流动性与高效撮合系统确保快速成交和低滑点风险。3. 采用多层次安全架构、SAFU基金及严格风控体系保障用户资产安全。4. 支持金融理财服务如Staking和币安宝,实现资产增值…

    2025年12月8日
    000
  • 币安app官方网页版安装 币安app官方获取渠道地址

    币安是全球领先的加密货币交易平台,提供比特币、以太坊等数百种数字资产交易服务。1. 其核心优势在于全球顶尖流动性与高性能撮合引擎,支持快速稳定交易。2. 用户应通过访问官网获取客户端,务必确认域名准确性以保障资产安全。3. 主要功能包括现货交易、合约交易、杠杆交易,同时提供理财及NFT市场等多样化服…

    2025年12月8日
    000

发表回复

登录后才能评论
关注微信