0

我有一个使用紧凑框架 2.0 为 Windows CE 开发的应用程序。在 c# 中,打开一个由我工作的公司开发的网站,使用 webbrowser 组件 Component Palette Microsoft。该站点使用 jquery 和 javascript。该应用程序可以正常使用该站点的所有操作功能,没有任何问题。我需要为 windows mobile 6.5 创建相同的应用程序。

我做了一个仅交换平台的试点项目(项目上的右键-> 更改目标平台 ...-> 更改为 Windows Mobile 6.5.3 Professional DTK)。结果如下:

  • 应用程序无法加载加载库 jQuery,启动应用程序时出现内存错误以及网站上的某些按钮功能存在问题。如果我评论该站点的库,则错误消失并且按钮可以正常工作,但 jquery 站点无法正常工作。
  • 同一个应用程序在 windows mobile 6.5 经典版和专业版中表现出不同的行为。
  • 如果我打开应用程序打开的同一个站点,则在 Internet Explorer(Windows Mobile 6.5 Windows Mobile 6.5 Classic 和 Professional)中,该站点都可以正常工作。

所以,我有以下问题:

  • 该应用程序需要适用于 windows mobile 6.5 经典和专业版。因此创建的项目(SDK)应该是一样的吗?
  • Framework utlizado 应该是 compact 2.0 还是应该使用 compact 3.5?
  • 是否有任何解决方案来控制内存 windows mobile 6.5 以避免 IE 中的内存不足错误?
  • Microsoft webbrowser 组件是否有任何替代方案?
  • Microsoft webbrowser 组件使用的引擎是什么?它会是安装在 Windows Mobile 上的默认浏览器吗?我可以换吗?

亲切地

4

1 回答 1

1

AFAIK 您可以使用两种不同的 IE 引擎作为浏览器组件:一个 PIE(旧 wm2003,兼容 IE6)和一个 IE6(Internet Explorer MOBILE >=6.1.4,IEM6)。

还有一个注册表项可以将 IEM6 切换到 PIE 模式 (HKLM/.../Security/MSHTML=1)。

Windows CE 中使用的 IE 始终比 Windows Mobile 上的任何 IE 更兼容桌面 IE6。尽管大多数 OEM 只包含名为 iesample 的 MS 示例浏览器。

我担心您无法控制使用的内存,但您可以通过将所有代码移动到库并调用该库中的函数来改善应用程序的内存占用。从 lib 运行的代码将由 WM 处理,而不是从 exe 运行的代码:http ://robtiffany.com/memmaker-for-the-net-compact-framework/

Windows Mobile Pro 和 Classic 在浏览器方面的行为应该相同,只要它们基于相同的 WM 构建。

可能您可以显示您正在使用的浏览器组件。

我能说的是CE浏览器组件和新的IEM6浏览器组件会有所不同。

于 2013-06-19T18:14:55.040 回答