一、概述
  AO打印是英文Active-Online Print的简称,也称主动在线打印。打印前支持AO通讯协议的AO打印机首先通过普通网络与C-Lodop服务保持在线链接,网页程序利用JavaScript语句向打印机输出复杂内容。
  相比于传统网络打印,打印机由被动链接变为主动链接,这种部署的优势很明显,既可以外网异地打印,也可以内外网本地打印,对打印两端的网络位置无要求,从而轻松实现广域网远程打印,手机、平板打印问题也一举搞定。鉴于当前宽带普及,加之云服务器租金越来越便宜,这都为AO打印的流行创造了条件。
  但是,如果手头没有这种AO打印机就没办法了吗?办法是有的,可用“PC电脑+AO端桥软件+普通打印机”代替,这就是所说的端桥模式。本文就是专门针对该方案的详解(标准AO打印见另文)。
 
先看看标准AO打印的示意图:

再仔细分析端桥模式的AO打印示意图,与上图对比理解:

  其中AO打印服务是有C-Lodop扩展版程序担任,AO端桥是由另一个同样版本C-Lodop程序担任。本部署分如下两部分,现在分章节详解:
  1、AO打印服务器的安装部署;
  2、AO端桥的安装设置;

二、AO打印服务器的安装部署

首先,租用一个公网IP主机,选装Windows系统,然后远程安装C-Lodop服务器软件,C-Lodop软件是本文关键产品,可从其官网下载(扩展版):

http://www.c-lodop.com/download.html

下载后执行CLodop_Setup_for_Win32NT_https_3.023Extend.exe 文件,中间有个步骤选择“云服务器工作模式”,其它步骤一律默认,见如下界面:

注意以上界面左上方“远程桌面”字样,表明是在远程公网主机上安装哟!
(当然在局域网内部署也是一样道理,只不过网络位置受局限了)

软件安装完毕后,正常会出现如下界面:

注意以上主机的公网IP地址121.196.197.102,这是购买主机时由云服务硬件运营商提供的,现在牢记之,后面的端桥客户端安装设置会用到它。

  正常情况下服务端安装就完成了,是不是很简单?!

三、AO端桥的安装设置
  AO端桥的安装也不复杂,几乎与普通C-Lodop安装一模一样,仅仅多了一个端桥设置:指定AO服务器IP地址。首先在担任AO端桥角色的电脑上安装C-Lodop扩展版,该软件和AO服务器端是同一个程序,下载地址同上。然后在该电脑中添加普通打印机,见下图:

安装完毕后,进行AO客户端桥设置,菜单路径为:

安装界面->设置->扩展功能->AO客户端桥->AO客户端桥设置

见下图:

  其中设置“指向的AO服务器IP地址”就是上一节谈到的 121.196.197.102 另外“端桥的标识名”也很关键,起一个好记忆的,这里起名“我的端桥01”,这个名称和“端桥的编号”在打印时都会用到。 
  下面就可以进行实际打印喽!
 
四、进行AO打印

按以上章节部署完毕后,从公网主机桌面的托盘右键菜单里,可进入“AO打印服务”。

进入AO打印服务器主界面后,可以查看打印机在线情况,仔细观察名称为“我的端桥01”的打印机(端桥)已经上线了哈!

现在好了,从任何一个能够上网的智能设备(PC电脑、平板、手机)中,打开任何浏览器,输入如下地址:http://121.196.197.102:8000/c_aobridge (本地址在互联网上真实可测!)
会展开看到如下欢迎画面,其中下拉列表有个“我的端桥01”的端桥/打印机可选:


 
  以上仅仅是欢迎页面的简单测试,真实打印要强大的多,需用JS编程,当然编程也很容易上手,参看一下该欢迎页面的源代码,有如下一行:

只要在网页head中用script标签加载目标云主机8000端口下CLodopfuncs.js文件(固定名),就可以开始用Lodop语句进行打印了,其中打印机选择语法:

LODOP.SET_PRINTER_INDEX("端桥驱动名或序号,端桥编号;端桥标识名,打印机名或序号");
  
  至于Lodop语句如何使用请参阅《C-Lodop技术手册》和演示样例,相关文档的下载地址仍是:
http://www.c-lodop.com/download.html

最后再看一个端桥实战的小例子:

<完>

图文详解AO打印(端桥模式)的更多相关文章

  1. 图文详解AO打印(标准模式)

    一.概述   AO打印是英文Active-Online Print的简称,也称主动在线打印.打印前支持AO通讯协议的AO打印机(购买地址>>)首先通过普通网络与C-Lodop服务保持在线链 ...

  2. 图文详解AO打印(端桥模式)(转)

    一.概述   AO打印是英文Active-Online Print的简称,也称主动在线打印.打印前支持AO通讯协议的AO打印机首先通过普通网络与C-Lodop服务保持在线链接,网页程序利用JavaSc ...

  3. 全网最详细的PLSQL Developer + Oracle client的客户端 或者 PLSQL Developer + Oracle server服务端的下载与安装过程(图文详解)

    不多说,直接上干货! 环境说明: 本地没有安装Oracle服务端,oracle服务端64位,是远程连接,因此本地配置PLSQL Developer64位. Oracle database使用在本机部署 ...

  4. HTML标签----图文详解

    国庆节快乐,还在加班的童鞋,良辰必有重谢! 本文主要内容 头标签 排版标签:<p>     <br>     <hr>     <center>     ...

  5. 基于CentOS6.5下如何正确安装和使用Tcpreplay来重放数据(图文详解)

    前期博客 基于CentOS6.5下snort+barnyard2+base的入侵检测系统的搭建(图文详解)(博主推荐) tcpreplay是什么? 简单的说, tcpreplay是一种pcap包的重放 ...

  6. 面渣逆袭:Redis连环五十二问,图文详解,这下面试稳了!

    大家好,我是老三,面渣逆袭系列继续,这节我们来搞定Redis--不会有人假期玩去了吧?不会吧? 基础 1.说说什么是Redis? Redis是一种基于键值对(key-value)的NoSQL数据库. ...

  7. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  8. SPSS学习系列之SPSS Modeler的功能特性(图文详解)

    不多说,直接上干货! Win7/8/10里如何下载并安装最新稳定版本官网IBM SPSS Modeler 18.0 X64(简体中文 / 英文版)(破解永久使用)(图文详解)   我这里,是以SPSS ...

  9. 图文详解 Android Binder跨进程通信机制 原理

    图文详解 Android Binder跨进程通信机制 原理 目录 目录 1. Binder到底是什么? 中文即 粘合剂,意思为粘合了两个不同的进程 网上有很多对Binder的定义,但都说不清楚:Bin ...

随机推荐

  1. dotweb框架之旅 [一] - HelloWorld

    一直想着,要系统性的写一些dotweb使用的文章,之前拖延了不少时间,今天,下定决定,算是正式的开始,也请大家一起监督. dotweb,是一款追求简约大方的go web框架,正如其github项目主页 ...

  2. java中==与equel的区别

    值类型是存储在内存中的堆栈(以后简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中. ==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地 ...

  3. C#委托

    关于什么是委托,委托如何使用,我在这里就不说了. 需要说的: 委托是函数指针链 委托的 BeginInvoke 委托如果出现异常,会如何 如果不知道函数指针,可以继续往下看,我来告诉大家,为何需要委托 ...

  4. 查漏补缺系列之dapper初体验

    什么是dapper 在维护一些较老的项目的时候,往往我们会用很多sql那么这个时候我们要考虑优化这些项目的时候,我们就可以使用dapper dapper 是一款轻量级的ORM框架,它的优势很多轻量级, ...

  5. 一次从0到1的java项目实践清单

    虽说工作就是简单的事情重复做,但不是所有简单的事你都能有机会做的. 我们平日工作里,大部分时候都是在做修修补补的工作,而这也是非常重要的.做好修补工作,做好优化工作,足够让你升职加薪! 但是如果有机会 ...

  6. iOS之ViewController的多层presentViewController的dismiss问题

    今天在Q群里有人问了个这么个问题: A,B,C,D 都是Viewcontroller.A.B.C.D使用present去切的 他是这么搞的: A -> B, B ->C, C->D, ...

  7. 小程序组件之picker和range-key的用法

        因为在微信小程序的官网上并没有range-key的例子以及实际用法,所以好多人不知道具体如何使用.然后我在这里对其进行一个简单的实现,并记录一些注意事项. 以下是官网给的说明:   具体的用法 ...

  8. redis源码分析之发布订阅(pub/sub)

    redis算是缓存界的老大哥了,最近做的事情对redis依赖较多,使用了里面的发布订阅功能,事务功能以及SortedSet等数据结构,后面准备好好学习总结一下redis的一些知识点. 原文地址:htt ...

  9. css元素选择器 first-child nth-child

    E:first-child   只要E元素是它的父级的第一个子元素,就选中.它需要同时满足两个条件,    (1)是"第一个子元素",    (2)是"这个子元素刚好是E ...

  10. 事件 event

    添加移除函数(removeEventListener)时三个参数保持一致,否则会失败,而且不会有错误提示 var btn = document.getElementById(“myBtn”); btn ...