Linux通过Pipelight原生支持 ActiveX 控件 (网银!)

  • 2K

工行网银, Silverlight, 支付宝控件, 放开那个 Windows 虚拟机, 让 Wine 上吧~
Linux通过Pipelight原生支持 ActiveX 控件 (网银!)

无图无真相:

Linux通过Pipelight原生支持 ActiveX 控件 (网银!)

 

Linux通过Pipelight原生支持 ActiveX 控件 (网银!)

 

基本的原理是, 利用 Chrome 里已有的 npactivex (ActiveX for Chrome) 扩展, 配合 pipelight 提供的 npactivex NPAPI 插件, 将 ActiveX 控件本身用 wine 执行, 并且无缝地嵌入 Chrome 网页中.

因为此功能依然在活跃开发中 (今年 FOSDEM 2014 的一个碰撞产生的火花神马的), 稳定版本的 pipelight 暂时没有加入此功能. 大家如果想尝鲜的话, 我下面介绍一下 Arch Linux 里的安装测试方法 (暂时只针对 64 位测试用户哈):
操作流程:
1. 添加来自 pipelight 的第三方源到 /etc/pacman.conf:

  1. [pipelight]
  2. Server = http://repos.fds-team.de/stable/arch/$arch

2. 添加并授权 pipelight 开发者的软件包签名 PGP key:

  1. sudo pacman-key -r E49CC0415DC2D5CA
  2. sudo pacman-key --lsign-key E49CC0415DC2D5CA

3. 安装 pipelight:

  1. sudo pacman -Sy pipelight

4. 解锁 pipelight 的 npactivex 插件:

  1. sudo pipelight-plugin --unlock npactivex

看到 "Plugin npactivex is now unlocked" 即为解锁成功.
5. 启用 npactivex 插件

  1. sudo pipelight-plugin --enable npactivex

看到 "Plugin npactivex is now enabled" 即为解锁成功.
6. 启动 chrome 浏览器,打开 chrome://plugins, 应该可以看到以下内容:

  1. ActiveX hosting plugin for NPAPI
  2. ActiveX hosting plugin for NPAPI r37
  3. Name:   ActiveX hosting plugin for NPAPI
  4. Description:    ActiveX hosting plugin for NPAPI r37
  5. Version:
  6. Location:   /usr/lib/pipelight/libpipelight-npactivex.so
  7. Type:   NPAPI
  8. Disable
  9. MIME types:
  10. MIME type   Description File extensions
  11. application/x-itst-activex  ActiveX (*.ocx)
  12. .ocx
  13. application/activex-manager ActiveXManager

如果看到下列错误:

  1. Pipelight Error (npactivex)!
  2. Something went wrong, check the terminal output

请从终端打开 chromium/google-chrome, 观察终端出错日志.
7. 安装需要的 ActiveX 控件. 下面以工行控件为例:
7.1. 下载工行网银控件安装包:

  1. wget http://www.icbc.com.cn/icbc/html/download/dkq/icbc_netbank_client_controls.exe

7.2. 安装 mfc42 运行库:

  1. WINEPREFIX=~/.wine-pipelight winetricks -q mfc42

7.3. 安装:

  1. WINEPREFIX=~/.wine-pipelight wine icbc_netbank_client_controls.exe

故障排除: 运行

  1. WINEPREFIX=~/.wine-pipelight wine uninstaller --list

如果输出包含以下内容就说明安装成功了, 否则说明以上某一步出错了

  1. {93156467-FD99-4A30-9CA5-8563F4BB8DB3}|||icbc_netbank_client_controls

8. 安装 np-activex extension:
扩展可以从 Chrome Web Store 直接安装, 地址: https://chrome.google.com/webstore/detail/activex-for-chrome/lgllffgicojgllpmdbemgglaponefajn/related (打不开请翻墙哦 :D)
9. 设置 np-activex extension:
打开 chrome://chrome/extensions, 点击 "ActiveX for Chrome" 旁边的 "选项" (Options), 浏览到 "ICBC工商银行" 所在的条目, 将"已禁用"改为"已启用".
10. 用 Chrome 打开 https://mybank.icbc.com.cn/icbc/perbank/index.jsp 应该可以正常登陆工行网银了

支付宝控件的安装过程基本一样 (注意不要漏掉设置 WINEPREFIX 哦), 不过在 npactivex extension 的设置界面并没有 Alipay 的选项. 分享一下我测试成功的规则哈:

  1. Mode: WildChar
  2. Pattern: https://*.alipay.com/*
  3. User Agent: MSIE9
  4. Other helper scripts: dynamic ieevent

最后, 感谢 Pipelight 项目. Pipelight 项目是两位德国的大学生发起的项目, 因最初目标是在浏览器里无缝支持 Silverlight 而得名. 如果你愿意表达对他们的感谢, 可以到以下链接为他们赠送 kudo:
https://www.ohloh.net/p/pipelight/contributors/3052248574201504
https://www.ohloh.net/p/pipelight/contributors/3052248574201570

感谢 npactivex 项目. npactivex 项目的开发者是 Chuan Qiu, 如果你愿意表达对他的感谢, 可以向他捐赠, 链接是 http://code.google.com/p/np-activex/wiki/Donations

感谢 Wine 项目以及 Wine 项目背后的CodeWeavers公司, 如果你愿意表达对他们的感谢, 可以购买商业版的 CrossOver 支持他们继续为 Wine 做出更多贡献: http://www.codeweavers.com/ 如果有足够多的用户要求, CrossOver 会集成 pipelight 解决方案, 方便更多 Linux 用户 :3

附安装 -git 版本的旧方法:
1. 安装源里的 mingw-w64 组, 全选安装

2. 安装 AUR/pipelight-git, 需要修改 PKGBUILD 的一些部分:
- 删除依赖 mingw-w32-bin
- 在 ./configure 这一行末尾添加 --win32-static

3. 完成安装, pipelight-git 的 wine-browser-installer 和 wine-silverlight 两个依赖也来自 AUR.

 

本文原作者:felixonmars,转载自Felix's Blog

阿斯兰萨拉
评论  1  访客  1
    • Roba
      Roba Firefox 17 Windows 7 1

      快乐源自折腾

    匿名

    发表评论

    匿名网友 填写信息

    :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: