重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你好!
创新互联主要从事成都网站建设、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务大化,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
1、如果是和真实的设备连接,那么可以买一条USB到串口的转换线
2、如果只是模拟串口,楼上说的就可以
.NET 类库生成的 dll 只要在你的项目引用里添加对 dll 的引用即可。图中是调用普通 dll 的方法,那个 dll 通常是用 C++ 写的非托管库。
using System.Net;
if(!string.IsNullOrEmpty(txtPort.Text))
{
IPAddress ip = IPAddress.Parse(txtIp.Text);
IPEndPoint point=new IPEndPoint(ip,int.Parse(txtPort.Text));
try
{
TcpClient tcp=new TcpClient();
tcp.Connect(point);
MessageBox.Show("端口打开");
}catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
通过以上这个方法,只能判断你是否能链接这个端口。
通过以下这个方法,能判断端口是否开放
public static void GetTcpConnections()
{
IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
TcpConnectionInformation[] connections = properties.GetActiveTcpConnections();
string str="";
foreach (TcpConnectionInformation t in connections)
{
str+="Local endpoint:"+ t.LocalEndPoint.ToString()+",";
str+="Remote endpoint:"+ t.RemoteEndPoint.ToString()+",";
str+=t.State.ToString()+",";
}
MessageBox.Show(str);
}
原因有:端口没有打开时不可以操作,端口打开时不可以再次打开,端口关闭时不能再次关闭
解决方法:
使用
On
Error
Resume
Next,遇到错误时继续运行
在要发送数据时,或某些必要的情况下,检查
Mscomm1.PortOpen是否=True,若不是,可以尝试打开一次端口,或弹出提示信息对话框
比如:
On
Error
Resume
Next
If
Mscomm1.PortOpen
=
False
Then
MSComm1.PortOpen=True
If
MSComm1.PortOpen
=
False
Then
MsgBox
"COM1没有成功打开!"
End
If
每次操作前都检查一遍端口,虽然麻烦,但是非常有效。