资源简介
C#代码最简单的调用ZeroMQ传输数据,传输文本信息,传输结构体数据,传输图像,完整代码,整理网络上的一些资料的应用。只是DLL版本是低版本的DLL库,并且是32位DLL库。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using ZeroMQ;
namespace GTTESTZMQ
{
public partial class FrmSendRecv : Form
{
public FrmSendRecv()
{
InitializeComponent();
}
//提取版本号
private void FrmSendRecv_Load(object sender EventArgs e)
{
this.Text =“当前ZMQ版本:“+ ZmqVersion.Current.Major + “.“ + ZmqVersion.Current.Minor + “.“+ZmqVersion.Current.Patch;
}
private int SendCount = 0;
private int RecvCount = 0;
#region 发送接收文本数据
//发送数据
private void btnSend_Click(object sender EventArgs e)
{
Task.Factory.StartNew(SendData);
}
void SendData()
{
ZmqContext context = ZmqContext.Create();
ZmqSocket sock = context.CreateSocket(SocketType.PUB);
sock.Bind(“tcp://*:5556“);
SendCount = 0;
while (true)
{
string sendMessage = “aaa“;
sendMessage = txtSendTxt.Text;
sock.Send(sendMessage Encoding.UTF8);
Thread.Sleep(1000);
SendCount++;
BeginInvoke(new Action(() => { lblSendTxtInfo.Text = “发送“+SendCount+ “次\n文本为“+ sendMessage; }));
}
}
//接收数据
private void btnRecv_Click(object sender EventArgs e)
{
Task.Factory.StartNew(RecvData);
}
void RecvData()
{
ZmqContext context = ZmqContext.Create();
ZmqSocket sock = context.CreateSocket(SocketType.SUB);
sock.Connect(“tcp://“+txtServerIp.Text+“:5556“);
RecvCount = 0;
sock.SubscribeAll();
while (true)
{
byte[] buf = new byte[1024];
int ints = 0;
byte[] msg = sock.Receive(buf out ints);
string strs = Encoding.UTF8.GetString(msg);
Thread.Sleep(1000);
RecvCount++;
BeginInvoke(new Action(() => { lblGetTxtInfo.Text = “接收“ + RecvCount + “次,文本为“+ strs+“数据长度:“+ints; }));
}
}
#endregion
#region 发送图像
private byte[] SendMessage = null;
private void btnSearch_Click(object sender EventArgs e)
{
OpenFileDialog open = new OpenFileDialog();
open.Filter = “*.jpg;*.png;*.bmp;*.jpeg(所有图片文件)|*.jpg;*.png;*.bmp;*.jpeg“;
if (open.ShowDialog() == DialogResult.OK)
{
SendMessage = ImageToBytes(Image.FromFile(open.FileName));
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 104960 2018-01-28 13:42 GTTESTZMQ\.vs\GTTESTZMQ\v14\.suo
文件 22688 2018-01-26 11:38 GTTESTZMQ\GTTESTZMQ\bin\Debug\GTTESTZMQ.vshost.exe
文件 490 2015-10-22 09:54 GTTESTZMQ\GTTESTZMQ\bin\Debug\GTTESTZMQ.vshost.exe.manifest
文件 79360 2012-09-27 17:50 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\clrzmq.dll
文件 65024 2014-01-03 10:19 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\clrzmq.pdb
文件 34917 2014-01-03 10:19 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\clrzmq.xm
文件 40448 2012-08-10 16:36 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\CommandLine.dll
文件 14848 2018-01-26 14:55 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\GTTESTZMQ.exe
文件 30208 2018-01-26 14:55 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\GTTESTZMQ.pdb
文件 22688 2018-01-26 14:56 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\GTTESTZMQ.vshost.exe
文件 416256 2018-01-26 13:28 GTTESTZMQ\GTTESTZMQ\bin\x64\Debug\libzmq.dll
文件 79360 2012-09-27 17:50 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\clrzmq.dll
文件 65024 2014-01-03 10:19 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\clrzmq.pdb
文件 34917 2014-01-03 10:19 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\clrzmq.xm
文件 40448 2012-08-10 16:36 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\CommandLine.dll
文件 19968 2018-01-28 13:42 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\GTTESTZMQ.exe
文件 34304 2018-01-28 13:42 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\GTTESTZMQ.pdb
文件 22696 2018-01-28 13:42 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\GTTESTZMQ.vshost.exe
文件 490 2015-10-22 09:54 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\GTTESTZMQ.vshost.exe.manifest
文件 416256 2018-01-26 13:28 GTTESTZMQ\GTTESTZMQ\bin\x86\Release\libzmq.dll
文件 10696 2018-01-28 11:58 GTTESTZMQ\GTTESTZMQ\FrmSendRecv.cs
文件 19220 2018-01-28 11:58 GTTESTZMQ\GTTESTZMQ\FrmSendRecv.Designer.cs
文件 5817 2018-01-28 11:58 GTTESTZMQ\GTTESTZMQ\FrmSendRecv.resx
文件 5078 2018-01-28 13:42 GTTESTZMQ\GTTESTZMQ\GTTESTZMQ.csproj
文件 416256 2018-01-26 13:28 GTTESTZMQ\GTTESTZMQ\libzmq.dll
文件 864 2018-01-26 11:37 GTTESTZMQ\GTTESTZMQ\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 7022 2018-01-26 13:28 GTTESTZMQ\GTTESTZMQ\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 7031 2018-01-26 14:50 GTTESTZMQ\GTTESTZMQ\obj\x64\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 1024 2018-01-26 14:56 GTTESTZMQ\GTTESTZMQ\obj\x64\Debug\GTTESTZMQ.csproj.FileListAbsolute.txt
文件 1012 2018-01-26 14:53 GTTESTZMQ\GTTESTZMQ\obj\x64\Debug\GTTESTZMQ.csproj.GenerateResource.Cache
............此处省略51个文件信息
- 上一篇:C#制作仿苹果优美界面
- 下一篇:C#上位机串口通信助手源代码
相关资源
- C#上位机串口通信助手源代码
- C#制作仿苹果优美界面
- C#自定义控件之-自定义MessageBox
- CSharp通讯录编程
- c# 读取txt文件中特定内容后的文字
- C#打开电脑本地文件地址
- C#实现在控件上画直线
- c#连接oracle实现用户登录以及密码的修
- C#基于TCP的Socket多线程通信包含服务端
- C# 中使用Report(rdlc)报表实现dataLi
- c#数据库课程设计-可视化界面
- C#三层架构
- .net 天气预报 C#应用程序
- C#热敏小票打印机打印位图
- 房屋出租管理系统access+c#
- 学生信息管理系统c#+sql
- c# 五子棋课程设计
- C#Socket多线程聊天室
- 基于C#的网络抓包程序源码
- C#做的拼图小游戏源代码
- C#动态添加菜单实现权限管理
- C# IO写入,输出
- C# 二手交易系统 二手交易系统
- 从数据库读取数据到坐标轴为时间的
- C#中以时间作为chart的X坐标轴间隔
- C# 不依赖Office读取Word、PPTdocdocxpptpp
- winform C# 远程视频流媒体播放器
- 解决GDAL读取shp文件属性和中文乱码问
- 使用c#将pdf文件转换成图片文件
- C# 利用log4net 把日志写入到数据库
评论
共有 条评论