[中文](https://github.com/dathlin/HslCommunication) | [English](https://github.com/dathlin/HslCommunication/blob/master/docs/English.md)
<pre>
///\ ///\ /////////\ ///\
//\\/ //\/ //\\\\\\\\//\ //\\/
//\/ //\/ //\\/ \\/ //\/
//\/ //\/ \//\ //\/
/////////////\/ \//////\ //\/
//\\\\\\\\\//\/ \\\\\//\ //\/
//\/ //\/ \//\ //\/
//\/ //\/ ///\ //\\/ //\/ //\
///\ ///\/ \/////////\\/ /////////////\/
\\\/ \\\/ \\\\\\\\\/ \\\\\\\\\\\\\/ Present by Richard.Hu
</pre>
# HslCommunication.dll
![Build status](https://img.shields.io/badge/Build-Success-green.svg) [![NuGet Status](https://img.shields.io/nuget/v/HslCommunication.svg)](https://www.nuget.org/packages/HslCommunication/) ![NuGet Download](https://img.shields.io/nuget/dt/HslCommunication.svg) [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](http://shang.qq.com/wpa/qunwpa?idkey=2278cb9c2e0c04fc305c43e41acff940499a34007dfca9e83a7291e726f9c4e8) [![NetFramework](https://img.shields.io/badge/Language-C%23%207.0-orange.svg)](https://blogs.msdn.microsoft.com/dotnet/2016/08/24/whats-new-in-csharp-7-0/) [![Visual Studio](https://img.shields.io/badge/Visual%20Studio-2017-red.svg)](https://www.visualstudio.com/zh-hans/) ![License status](https://img.shields.io/badge/License-LGPL3.0-yellow.svg) ![copyright status](https://img.shields.io/badge/CopyRight-Richard.Hu-brightgreen.svg)
# HslCommunication.jar
![Build status](https://img.shields.io/badge/Build-Success-green.svg) ![License status](https://img.shields.io/badge/License-LGPL3.0-yellow.svg) ![NetFramework](https://img.shields.io/badge/Language-java-orange.svg) ![JDK status](https://img.shields.io/badge/JDK-1.8.0-green.svg) ![IDE status](https://img.shields.io/badge/Intellij%20Idea-2018.4-red.svg) ![copyright status](https://img.shields.io/badge/CopyRight-Richard.Hu-brightgreen.svg)
# HslCommunication.py
![Build status](https://img.shields.io/badge/Build-Success-green.svg) ![License status](https://img.shields.io/badge/License-LGPL3.0-yellow.svg) ![NetFramework](https://img.shields.io/badge/Language-python-orange.svg) ![py status](https://img.shields.io/badge/python-3.6-green.svg) ![IDE status](https://img.shields.io/badge/Visual%20Studio-Code-red.svg) ![copyright status](https://img.shields.io/badge/CopyRight-Richard.Hu-brightgreen.svg)
## CopyRight
本组件版权归Richard.Hu所有
## Official Website
唯一官网:[http://www.hslcommunication.cn/](http://www.hslcommunication.cn/)
## License
使用请遵循LGPL-3.0协议说明,除了协议中已经规定的内容外,附加下面三个条款(与原协议如有冲突以附加条款为准):
* 允许用户使用本工具库(从NuGet下载)集成到自己的项目中作为闭源软件一部分,只需要声明版权出处并出具一份LGPL-3.0的授权协议即可。
* 禁止复制中间的代码及参考思路开发出类似的组件库。
* 源代码仅作为个人学习使用。
## Install From NuGet
说明:NuGet为稳定版本,支持在线升级,组件的使用最好从NuGet下载,此处发布的项目有可能为还没有通过编译的测试版,NuGet安装如下:
```
Install-Package HslCommunication
```
## Environment
* IDE: **Visual Studio 2017** 必须这个版本及以上,不然会语法报错
* .Net Framework环境下:支持.Net 3.5及以上环境,功能最完善。
* .Net Standard环境下:.Net 2.0以上,目前仅仅实现PLC读写,modbus tcp读写,日志记录。
* java环境下:**Intellij Idea 2018.4**
* python: **Visual Studio Code**
## Contact
* 工业软件交流QQ群:[592132877](http://shang.qq.com/wpa/qunwpa?idkey=2278cb9c2e0c04fc305c43e41acff940499a34007dfca9e83a7291e726f9c4e8)
* 邮箱地址(Email):hsl200909@163.com
* 技术支持VIP群(打赏超过100RMB可加入):[838185568](http://shang.qq.com/wpa/qunwpa?idkey=eee02ce1acde63c6316cbb380a80e033a14170ab7ca981f1cac83e0b657c8860)
## Project Target
本项目的目标在于开发一个.Net及java下大多数软件系统都会包含了基础类库功能,实现一些常用的数据通信,日志记录等等类,以及版本类,网络通讯类,PLC数据访问类。并且实现C#和java无缝通信集成。
## HslCommunication.dll Summary
完整的项目介绍地址: [http://www.cnblogs.com/dathlin/p/7703805.html](http://www.cnblogs.com/dathlin/p/7703805.html)
* [日志记录功能](http://www.cnblogs.com/dathlin/p/7691693.html)
* [同步网络通讯功能 **NetSimplify**](http://www.cnblogs.com/dathlin/p/7697782.html)
* [文件管理引擎](http://www.cnblogs.com/dathlin/p/7746113.html)
* [异步网络通讯功能 **NetComplex**](http://www.cnblogs.com/dathlin/p/8097897.html)
* [三菱PLC以太网访问](http://www.cnblogs.com/dathlin/p/7469679.html)
* [三菱PLC串口访问](https://www.cnblogs.com/dathlin/p/9536467.html)
* [西门子PLC访问](http://www.cnblogs.com/dathlin/p/8685855.html)
* [欧姆龙PLC访问](http://www.cnblogs.com/dathlin/p/8723961.html)
* [AB PLC访问](https://www.cnblogs.com/dathlin/p/9607929.html)
* [邮件功能使用](http://www.cnblogs.com/dathlin/p/8463613.html)
* [流水号生成器](http://www.cnblogs.com/dathlin/p/7811489.html)
* [软件注册码功能](http://www.cnblogs.com/dathlin/p/7832315.html)
* [数据订阅推送 **NetPush**](http://www.cnblogs.com/dathlin/p/8992315.html)
* [ModBus 服务器开发,包含Tcp服务器和Rtu服务器](http://www.cnblogs.com/dathlin/p/7782315.html)
* [ModBus Tcp客户端开发](http://www.cnblogs.com/dathlin/p/7885368.html)
* [ModBus Rtu客户端开发](http://www.cnblogs.com/dathlin/p/8974215.html)
* [异形Modbus Tcp客户端开发,侦听模式客户端](http://www.cnblogs.com/dathlin/p/8934266.html)
* 多线程任务功能
* [CRC16校验](http://www.cnblogs.com/dathlin/p/7821808.html)
* [常用控件库](http://www.cnblogs.com/dathlin/p/8150516.html)
* [连接池使用](https://www.cnblogs.com/dathlin/p/9191211.html)
## HslCommunication.jar Summary
本组件提供java版本,为.net版本的阉割版,除去了所有的服务器功能代码,保留了部分的客户端功能代码,方便的和PLC,设备进行数据交互,和C#程序进行数据交互,本jar组件适用用安卓开发,方便搭建一个.net 服务器 + windows 客户端 + asp.net 客户端 + j2ee 客户端 + java 客户端 + android 客户端,目前的java功能代码如下:
* [三菱PLC的数据交互](https://www.cnblogs.com/dathlin/p/9176069.html)
* [西门子PLC的数据交互](https://www.cnblogs.com/dathlin/p/9196129.html)
* 欧姆龙PLC的数据交互
* Modbus Tcp 客户端开发
* 同步网络通讯功能 **NetSimplify**
* 异步网络通讯功能 **NetComplex**
* 数据订阅推送 **NetPush**
## HslCommunication.py Summary
本组件提供python版本,为.net版本的阉割版,除去了所有的服务器功能代码,保留了部分的客户端功能代码,方便的和PLC,设备进行数据交互,和C#程序进行数据交互,适用于跨平台运行,主要功能如下:
* 三菱PLC的数据交互
* 西门子PLC的数据交互
* 欧姆龙PLC的数据交互
* Modbus Tcp 客户端开发
* 同步网络通讯功能 **NetSimplify**
* 异步网络通讯功能 **NetComplex**
* 数据订阅推送 **NetPush**
## Second Extensions Project (内含几个Demo)
* 基于本组件开发的一个CS架构的项目模版,该模版采用本组件进行开发,完成了账户管理,角色管理,个人文件管理,头像机制,自动升级,完善的日志等等功能。项目地址为:[https://github.com/dathlin/ClientServerProject](https://github.com/dathlin/ClientServerProject)
* �