zoukankan
html css js c++ java
使用MSMQ传送文字、类、图片
学习MSMQ期间做的测试程序。
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Text;
using
System.Windows.Forms;
using
System.Xml.Serialization;
using
System.IO;
namespace
msmqApp
{
public
partial
class
Form1 : Form
{
public
Form1()
{
InitializeComponent();
}
int
iCount
=
0
;
/**/
///
<summary>
///
发送文字。
///
</summary>
private
void
btnSend1_Click(
object
sender, EventArgs e)
{
iCount
++
;
try
{
msgq1.Send(
"
Message Contents:
"
+
iCount);
}
catch
(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
/**/
///
<summary>
///
接收文字。
///
</summary>
private
void
btnReceive1_Click(
object
sender, EventArgs e)
{
System.Messaging.Message m;
string
str;
try
{
m
=
msgq1.Receive(
new
TimeSpan(
0
,
0
,
3
));
str
=
(
string
)m.Body;
}
catch
{
str
=
"
没有返回消息。
"
;
}
MessageBox.Show(str);
}
/**/
///
<summary>
///
发送一个类。
///
</summary>
private
void
btnSendClass_Click(
object
sender, EventArgs e)
{
Student no1
=
new
Student();
no1.name
=
"
my
"
;
no1.age
=
20
;
no1.sex
=
"
男
"
;
Student no2
=
new
Student();
no2.name
=
"
朋友1
"
;
no2.age
=
21
;
no2.sex
=
"
女
"
;
Student no3
=
new
Student();
no3.name
=
"
朋友2
"
;
no3.age
=
22
;
no3.sex
=
"
男
"
;
no1.friends.Add(no2);
no1.friends.Add(no3);
System.Messaging.Message m
=
new
System.Messaging.Message();
m.Body
=
no1;
try
{
msgq1.Send(m);
}
catch
(Exception ex)
{
MessageBox.Show(ex.Message
+
"
"
+
ex.InnerException.Message);
}
}
/**/
///
<summary>
///
接收一个类。
///
</summary>
private
void
btnReceiveClass_Click(
object
sender, EventArgs e)
{
System.Messaging.Message m;
Student st;
try
{
m
=
msgq1.Receive(
new
TimeSpan(
0
,
0
,
3
));
m.Formatter
=
new
System.Messaging.XmlMessageFormatter(
new
Type[]
{
typeof
(Student) }
);
st
=
(Student)m.Body;
string
str
=
"
name:
"
+
st.name;
str
+=
"
\r\n age:
"
+
st.age;
str
+=
"
\r\n sex:
"
+
st.sex;
str
+=
"
\r\n friends:\r\n
"
;
foreach
(Student friend
in
st.friends)
{
str
+=
"
[name:
"
+
friend.name;
str
+=
"
age:
"
+
friend.age;
str
+=
"
sex:
"
+
friend.sex
+
"
]\r\n
"
;
}
MessageBox.Show(str);
}
catch
(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
/**/
///
<summary>
///
发送图片
///
</summary>
private
void
btnSendImage_Click(
object
sender, EventArgs e)
{
Stream imgStream;
System.Messaging.Message mImg
=
new
System.Messaging.Message();
openFileDialog1.Filter
=
"
ImageFile(*.bmp,*.jpg,*.gif)|*.bmp;*.jpg;*.gif
"
;
openFileDialog1.FilterIndex
=
1
;
if
(openFileDialog1.ShowDialog()
==
DialogResult.OK)
{
if
((imgStream
=
openFileDialog1.OpenFile())
!=
null
)
{
mImg.BodyStream
=
imgStream;
try
{
msgq1.Send(mImg);
}
catch
(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
imgStream.Close();
}
}
}
}
/**/
///
<summary>
///
接收图片
///
</summary>
private
void
btnReceiveImage_Click(
object
sender, EventArgs e)
{
Bitmap bmp;
Stream imgStream;
System.Messaging.Message mImg
=
new
System.Messaging.Message();
bool
bReceive
=
false
;
try
{
mImg
=
msgq1.Receive(
new
TimeSpan(
0
,
0
,
3
));
bReceive
=
true
;
}
catch
{
MessageBox.Show(
"
没有接收到消息。
"
);
}
try
{
if
(bReceive)
{
imgStream
=
mImg.BodyStream;
bmp
=
new
Bitmap(imgStream);
pictureBox1.Image
=
bmp;
}
}
catch
(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Student类
#region
Student类
public
class
Student
{
public
string
name;
public
System.Collections.ArrayList friends;
public
int
age;
public
string
sex;
public
Student()
{
friends
=
new
System.Collections.ArrayList();
}
}
#endregion
}
}
要使用MSMQ必须安装win消息队列组件。
-----------------------------------------------------------------
我做的小程序们
【推荐】Web版短信管理平台源码
WinForm版短信管理平台源码
移动短信程序源码Win服务版(CMPP3.0/CMPP2.0协议)
移动物联网卡短信源码(CMPP3.0协议,支持MsSql/MySql数据库)
C#实现联通短信Sgip协议程序源码
C#实现电信短信SMGP协议程序源码
C#实现移动短信CMPP服务端程序源码
小y的QQ:
28657321
(欢迎交流)
查看全文
相关阅读:
POJ 3069 Saruman's Army
POJ 3617 Best Cow Line
Part5核心初始化_lesson2---设置svc模式
Part5核心初始化_lesson1---异常向量表
Part4_lesson4---Bootloader架构设计
Part4_lesson3---U-Boot工作流程分析
zigbee--绑定
Part4_lesson2---ARM处理器这个硬件启动流程分析
Part4_lesson1---Bootloader设计蓝图
zigbee之MAC地址发送
原文地址:https://www.cnblogs.com/tuyile006/p/1100275.html
最新文章
Hashtable与ConcurrentHashMap区别
别再被忽悠 谁说新车磨合不能跑高速
【BZOJ2527】【POI2011】Meteors(整体二分)
【BZOJ5343】【CTSC2018】混合果汁(整体二分)
【BZOJ2957】—楼房重建(线段树维护单调序列)
【Codeforces1009F】—Dominant Indices(长链剖分)
【BZOJ5290】【HNOI2018】—道路(树形dp)
【5289】【HNOI2018】—排列(语文题)
【BZOJ5285】【HNOI2018】—寻宝游戏(结论题)
【BZOJ4556】【TJOI2016&HeOI2016】—字符串(后缀数组+主席树+ST表)
热门文章
【BZOJ5303】【HAOI2018】—反色游戏(结论+tarjan割点)
【BZOJ5305】【HAOI2018】—苹果树(组合数学)
HDU 3466 Proud Merchants
HDU 2602 Bone Collector
HDU 2546 饭卡
HDU 2068 Choose the best route
动态规划--背包问题
PAT L2-005 集合相似度
PAT L1-044 稳赢
PAT L1-048 矩阵A乘以B
Copyright © 2011-2022 走看看