資源簡介
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#上位機串口通信助手源代碼
評論
共有 條評論