Infotech.ActiveX.Engine 设计思路

简介:

在公司开发过程中,提出ActiveX 方案,通过公司高层采纳,今天在研究和开发ActiveX 引擎;
已通过测试,成功部署.

ActiveX Engine 就是一个ActiveX 的形式,在html 页内运行;

实现原理为:


主要功能:
Client 浏览器只需要安装2个必须的程序集;它负责从webservices后台调用Assembly 到本地,并装入;

要求:
Assembly内部是使用UserControl ,那么它的Owner可以使用 exe 包装为标准Winform,如果是通过Activex engine 来运行的话,那么它也可以做一个RIA 应用;

难点:
1.已解决:通过AppDomain 的方法拆装每个Assembly,避免影响当前域和Assembly版本冲突问题;但是如何将UserControl 增加到当前域的Controls内是个难点,不过我解决了;方法比较另类,直接使用非托管api实现的.
2.已解决:远端assembly的相关程序集,采用智能化的搜索,打包->压缩->传输到client activex engine 使用.整个过程是透明的。
3.未解决:脚本交互的时候,方法的参类型的变形,该问题一直未解决;在C#中比如参数为object[] Params.那么在javascript该如何传递呢?(目前采用非常蠢的办法凑合着)

用例:
Assembly:Test1.dll

class UserControlTest:UserControl {
...
}

HTML:Test.htm
<object classid="......"/>
<script type=text/javascript>core1.LoadAssembly("Test1.dll", "UserControlTest");</script>

core1为ActiveX.Engine 实例:它提供装入方法,和Current UserControl 交互的方法,这部分的实现采用反射.

关于ActiveX.Engine ,是应用于b/s 在一些复杂的,低级的模块实现上的解决办法,比如:串口通讯/高级图表...等等.


关于该思路的起源:
http://chinasf.cnblogs.com/archive/2006/06/11/WINCTS.html



本文转自suifei博客园博客,原文链接:http://www.cnblogs.com/Chinasf/archive/2006/07/08/446151.html,如需转载请自行联系原作者
相关文章
|
5月前
|
缓存 数据库连接 API
Entity Framework Core——.NET 领域的 ORM 利器,深度剖析其最佳实践之路
【8月更文挑战第28天】在软件开发领域,高效的数据访问与管理至关重要。Entity Framework Core(EF Core)作为一款强大的对象关系映射(ORM)工具,在 .NET 开发中扮演着重要角色。本文通过在线书店应用案例,展示了 EF Core 的核心特性和优势。我们定义了 `Book` 实体类及其属性,并通过 `BookStoreContext` 数据库上下文配置了数据库连接。EF Core 提供了简洁的 API,支持数据的查询、插入、更新和删除操作。
145 0
|
存储 前端开发 安全
【面试题】: bs架构与cs架构的区别以及各自优缺点
bs架构与cs架构的区别以及各自优缺点
3040 0
|
8月前
|
数据处理
Google Earth Engine(GEE)——sentinel-1数据处理过程中出现错误Dictionary does not contain key: bucketMeans
Google Earth Engine(GEE)——sentinel-1数据处理过程中出现错误Dictionary does not contain key: bucketMeans
134 0
|
SQL 数据采集 NoSQL
One ID中的核心技术ID-Mapping究竟是怎么实现的?
One ID中的核心技术ID-Mapping究竟是怎么实现的?
|
SQL 存储 缓存
OceanBase 源码解读(十一):Location Cache 模块浅析
OceanBase 源码解读(十一):Location Cache 模块浅析
351 0
OceanBase 源码解读(十一):Location Cache 模块浅析
|
Java
修改广告接口(alipay.marketing.cdp.advertise.modify)JAVA版本demo
说明:         该接口是开发者帮助线下商家修改广告内容,如修改的是线上的广告内容,需要先将线上广告内容下架,再修改,修改后操作上架,才能在支付宝钱包APP看到修改后的广告内容。运营位类型可以选择图片或H5。
411 12
|
API 数据安全/隐私保护
|
Java
创建广告接口(alipay.marketing.cdp.advertise.create)JAVA版本demo
说明及作用:        官网接口文档看一下:[url]https://docs.open.alipay.com/213/105272/[/url]        在口碑店铺页中,增加商家自定义区域。
520 0