USB联机线编程接口(API)

2013-10-19

本页面的文字允许在知识共享 署名-相同方式共享 3.0协议GNU自由文档许可证下修改和再使用。

关键字:USB隔离线、USB点对点通讯、USB通讯编程接口、USB数据传输、双机互联、USB数据共享、键鼠共享器、USB联机线、USB联网线、USB共享线、USB互联线、USB对拷线、USB对联线、USB互联线、USB文件传输、USB。

一、概述

  当前计算机的USB口已很普遍,USB2.0理论传输速率最高为480Mbps,即60MB/s,USB3.0理论传输速率最高为5Gbps,即625MB/S。目前USB口主要用于U盘、USB硬盘、USB键盘、USB鼠标、USB摄像头、USB光驱等。

  其实,增加一条USB联机线利用USB口还可实现基于USB口的内外交网隔离、小型分布式服务器、USB点对点通讯、USB点对多点通讯、光驱共享、数据共享、网络共享、联网、键鼠共享、剪贴板共享、档案共享等很多应用,因此USB联机线也叫USB隔离线、USB通讯线、USB联网线、共享线、互联线、对拷线、对联线。

  市场上的联机线都是配置专用软件实现联网、数据共享、键鼠共享、剪贴板共享、USB设备共享等功能,它们均不提供编程接口(API),开发人员不能用它通过USB口实现自己的各种应用,如内外网隔离、点对点(或点对多点)通讯、小型分布式服务器等。基于这些开发人员的需求,石家庄市众智电子科技开发中心开发了usb联机线编程接口(API),为开发人员开发自己的基于联机线的各种应用提供支持。有需要的朋友请联系:0311-87024917。

  USB联机线API,提供基于USB口的usb2usb透明传输编程接口,用户可以用它开发各种自己的应用。如:加密传输、内外网隔离等等。对于内外网隔离应 用,做隔离的两台PC,用专用的USB联机线通过USB口相连,发送和接收的数据完全自己控制,具有很高的安全性,近乎于完全的物理隔离,但比物理隔离使用起来更方便。


二、众智USB联机线API

/*****************************************************************************
Filename: zzUsbAPI.h
Function: usb联机线API接口。
           Ver1.0  2012.6.28
Editor:   LiuYaoKai
Date:     2012.6.28
         Copyright(C) by LiuYaoKai 13803113171 0311-87024917
******************************************************************************/
 
//功能描述:初始化API, 获取设备ID,获取包尺寸,包尺寸最大为64K
//输入参数:无
int u2u_init();
 
//打开USB联机线设备。返回true成功,false失败
BOOL u2u_Open(); 
 
//功能描述:从usb接收数据
//输入参数:lpBuf 接收数据的缓冲区指针,接收缓冲区的尺寸应当大于等于包尺寸。
//          len   接收的数据长度
//          ret   用于返回错误代码或接收缓冲区内剩余的未处理包的数量。
BOOL u2u_RecvData(LPBYTE lpBuf, int& len, int& ret );
 
//功能描述:从usb发送数据
//输入参数:lpBuf 发送数据的缓冲区指针,发送缓冲区的尺寸应当小于等于包尺寸。如果
//          lpBuf=NULL, 该函数返回发送缓冲区内剩余的未处理包的数量。
//          len   发送的数据长度。
//          ret   用于返回错误代码或发送缓冲区内剩余的未处理包的数量。
BOOL u2u_SendData(LPBYTE lpBuf, int len, int& ret );
 
//关闭usb联机线设备。
void u2u_Close();
 
//卸载API。应当先关闭usb联机线设备,再执行此操作。
void u2u_Exit();
 
//获取api操作的最后一个错误的错误代码
DWORD u2u_getLastErr();
 
//清空发送和接收缓冲区
void u2u_FreeTxRxBuf();
 
三、USB联机线简介
  USB联机线和普通的USB线不同,他是一种中间带芯片的线。因为USB总线系统中只能有一个主机,通常电脑的USB接口都是主机接口,所以不能简单的把它们连接在一起,之间需要一个转换,中间的芯片就是完成这个转换的,这才有USB联机线的产生,USB联机线中间有个小疙瘩,或者一端类似U盘,有的联机线本身也可做U盘使用。
  1条USB联网线 = 2块网卡+1条网线,且速率比网卡快得多,且能隔离病毒、网络攻击,非常安全。
   


 
USB联机线的用途:
  • 基于USB口的内外网隔离
  • USB点对点通讯
  • USB点对多点通讯
  • USB文件传输、USB数据传输
  • 小型分布式服务器
  • 两台计算机间档案高速传送复制
  • 两台计算机间的邮件/行事历/联络人等同步功能
  • 两台计算机间档案同步
  • 随身碟的档案管理程序
  • 分享IP上网(无需网卡,透过另一部计算机上网)
  • 分享光驱(对方光驱可以当成你的外接光驱直接使用)
  • 分享键盘鼠标
。。。。。。。

USB联机线编程接口(API)的更多相关文章

  1. (转载)Linux系统调用及用户编程接口(API)

    (转载)http://www.farsight.com.cn/news/emb167.htm 1 Linux系统调用 所谓系统调用是指操作系统提供给用户程序调用的一组“特殊”接口,用户程序可以通过这组 ...

  2. FTK应用程序编程接口(API)手册-1【转】

    转自:http://blog.csdn.net/absurd/article/details/6702047 框架函数 框架函数支撑FTK的主体,它负责初始化应用程序,启动主循环和退出主循环.它对任何 ...

  3. Linux系统调用及用户编程接口(API)

    系统调用 所谓系统调用是指操作系统提供给用户程序调用的一组"特殊"接口,用户程序能够通过这组"特殊"接口来获得操作系统内核提供的服务.比如用户能够通过进程控制相 ...

  4. Atitit 图像处理之编程之类库调用的接口api cli gui ws rest  attilax大总结.docx

    Atitit 图像处理之编程之类库调用的接口api cli gui ws rest  attilax大总结.docx 1. 为什么需要接口调用??1 1.1. 为了方便集成复用模块类库1 1.2. 嫁 ...

  5. API(Application Programming Interface,应用程序编程接口)

    API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码 ...

  6. Flask 教程 第二十三章:应用程序编程接口(API)

    本文翻译自The Flask Mega-Tutorial Part XXIII: Application Programming Interfaces (APIs) 我为此应用程序构建的所有功能都只适 ...

  7. LATTICE USB下载线接口说明

    这节知识摘抄于网络,仅用几张图片来显示,提醒Usb下载线的连接方式. 最后贴出个人使用的8线的USB下载器的连接方式: 再补充一点,应为彩色杜邦线与USB下载器是活口连接,两个可以分开,再连接的时候, ...

  8. NetBIOS与Winsock编程接口

    最近在看网络编程方面的书,由于不是通信专业出身的,以前理解的网络体系感觉就是tcp/ip,最近工作上接触到了一些光环网等乱七八糟的东西,有些基本的LC.SC连接器都不认识.花时间看了下计算机网络体系结 ...

  9. 网络层、传输层、应用层、端口通信协议编程接口 - http,socket,tcp/ip 网络传输与通讯知识总结

    引: http://coach.iteye.com/blog/2024511 什么是TCP和UDP,以及二者区别是什么? TCP的全称为传输控制协议.这种协议可以提供面向连接的.可靠的.点到点的通信. ...

随机推荐

  1. uva 10922 - 2 the 9s

    題目意思:讀取一數字,此數字最大有1000位.計算該數字是否為九的倍數?如是,再計算其階層數. ※判斷是否為九的倍數:所有位數相加 ÷ 9=0,即為九的倍數. ※計算階層數:所有位數相加後得出的第一個 ...

  2. C++ Primer 5th 第4章 表达式

    表达式是运算对象及运算符组成的式子,表达式求值将得到一个结果,单独的变量或者字面值也算表达式,结果是其本身. 运算符分为:一元运算符.二元运算符.三元运算符.一元即一个作用对象,二元两个作用对象,以此 ...

  3. 转载:mysql-Auto_increment值修改

    转载网址:http://libo93122.blog.163.com/blog/static/1221893820125282158745/ | 2012-03-13 11:19:10 | 2012- ...

  4. http head

    Accept HTTP_ACCEPT Accept-Charset HTTP_ACCEPT-CHARSET Accept-Encoding HTTP_ACCEPT-ENCODING Accept-La ...

  5. 官方recovery签名验证的破解教程

    下面讲如何破解官方recovery签名验证(这个方法应该是通用的,其他手机可以参考,recovery签名验证破解了,也不用费力编译第三方recovery) 1.从官方ROM里提取recovery.im ...

  6. 自定义Window进入和退出效果(转)

    看了android的源代码和资源文件,终于明白如何去修改设置Dialog和Activity的进入和退出效果了. 设置Dialog首先通过getWindow()方法获取它的窗口, 然后通过getAttr ...

  7. Qt Lite

    http://blog.qt.io/blog/2016/08/18/introducing-the-qt-lite-project-qt-for-any-platform-any-thing-any- ...

  8. BZOJ1628: [Usaco2007 Demo]City skyline

    1628: [Usaco2007 Demo]City skyline Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 256  Solved: 210[Su ...

  9. PHP页面静态化(转)

    在很多地方都看到有PHP整站静态化的东东,怪唬人的..其实,你会静态化一个页面,那么别说整站了,想静态化多少都可以.所以关键是,首先要知道怎么静态化一个页面,了解静态化的原理是关键.. 这里就说下我个 ...

  10. Javascript:一个优雅的时钟

    实现效果: 准备工作: 1# 定时器 相关知识了解 2#javascript Date(日期)对象 3# 准备效果所用图片 实现原理: 1# 获取当前时间: var time=new Date(); ...