C#打开一个端口

friend555 2009-01-13 02:21:36
我想用C#程序实现打开某一个指定端口,应该怎样实现,请高手指点!!!
...全文
872 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
公子小白 2011-11-08
  • 打赏
  • 举报
回复
可以使用process 调用dos 命令打开需要打开的端口
netsh firewall add portopening udp(//端口类型) 8081(//端口号) myupdname(//端口名称)

hu320 2011-06-10
  • 打赏
  • 举报
回复
没人回答了
loutili 2009-08-07
  • 打赏
  • 举报
回复
回帖是一种美德!每天回帖即可获得 10 分可用分!

真的吗
化木成林 2009-04-11
  • 打赏
  • 举报
回复
找不到我用的.
vision_n 2009-02-03
  • 打赏
  • 举报
回复
回帖是一种美德!每天回帖即可获得 10 分可用分!
friend555 2009-02-03
  • 打赏
  • 举报
回复
回复zpjwys:对啊,封堵端口,把一个端口封住,使程序不能使用这个端口
friend555 2009-02-02
  • 打赏
  • 举报
回复
非常感谢shart_su的回答:能不能在帮帮我,请问要想封堵某一个已经打开的端口应该怎样封堵呢?
拜谢!!
会给分的!
ZPJWYS 2009-02-02
  • 打赏
  • 举报
回复
封堵端口?
DerekSuCn 2009-01-30
  • 打赏
  • 举报
回复
那还是打开端口去侦听。提供服务就是让别的程序(客户端)去连接该端口。
friend555 2009-01-20
  • 打赏
  • 举报
回复
回sharp_su:有些端口被封堵了,某项服务就没有了,我是想打开一个端口来提供一个服务
DerekSuCn 2009-01-19
  • 打赏
  • 举报
回复
to:friend555
在侦听之前打开一个端口做什么用?是去连接别的服务器,还是什么?
friend555 2009-01-15
  • 打赏
  • 举报
回复
回复sharp_su:谢谢您的回答,不过我说的打开一个端口不是侦听一个端口,在侦听之前要先打开一个端口
DerekSuCn 2009-01-15
  • 打赏
  • 举报
回复
据我的理解,你所说的“打开一个端口”,更好的说法是:“侦听一个端口”。
using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Text;

class MyTcpListener
{
public static void Main()
{
TcpListener server=null;
try
{
// 指定侦听的端口号.
Int32 port = 13000;
IPAddress localAddr = IPAddress.Parse("127.0.0.1");
server = new TcpListener(localAddr, port);
// 开始侦听,等待客户端连接.
server.Start();

// 设置接收数据缓冲区
Byte[] bytes = new Byte[256];
String data = null;

// Enter the listening loop.
while(true)
{
Console.Write("Waiting for a connection... ");

// 开始等待客户端连接。程序会在这里挂起,直到收到客户端连接。
// You could also user server.AcceptSocket() here.
TcpClient client = server.AcceptTcpClient();
// 收到客户端连接后,会执行到这里。
// Client 就是与客户端的连接控件。实际应用时,一般是建立一个循环使用的数组列表,收到新连接后,寻找一个空的位置开始使用,当连接断开后,就将该控件销毁。一般需要定时检测 client 连接是否已经断开。虽然有断开的事件,但经常收不到。
Console.WriteLine("Connected!");

data = null;

// 取得数据流,用于接受或发送数据。

// 剩下的就不多解释了。这是 MSDN帮助的源内容。
NetworkStream stream = client.GetStream();

int i;
// Loop to receive all the data sent by the client.
while((i = stream.Read(bytes, 0, bytes.Length))!=0)
{
// Translate data bytes to a ASCII string.
data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);
Console.WriteLine("Received: {0}", data);

// Process the data sent by the client.
data = data.ToUpper();

byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);

// Send back a response.
stream.Write(msg, 0, msg.Length);
Console.WriteLine("Sent: {0}", data);
}

// Shutdown and end connection
client.Close();
}
}
catch(SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
}
finally
{
// Stop listening for new clients.
server.Stop();
}


Console.WriteLine("\nHit enter to continue...");
Console.Read();
}
}

friend555 2009-01-14
  • 打赏
  • 举报
回复
我能找到网络编程,可找不到打开、封堵端口方面的知识
ikceo2008 2009-01-14
  • 打赏
  • 举报
回复
C#网络编程,在网上搜下..找不到,联系我!!
friend555 2009-01-14
  • 打赏
  • 举报
回复
谢谢19871117:这样发送数据之后,肯定要有一个接收的程序,接收数据我知道怎么接收,可是接收之后应该怎么处理呢,我是想打开那个指定的端口,应该怎么写程序?
68435970 2009-01-14
  • 打赏
  • 举报
回复
Socket发送数据
IPAddress ipa = IPAddress.Parse("192.168.110.1");
IPEndPoint ipe = new IPEndPoint(ipa, 8888);//8888为指定端口
Socket soc = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
soc.Connect(ipe);
soc.Send(bytefile);
soc.Close();
春天的气息 2009-01-13
  • 打赏
  • 举报
回复
查一下关于Ms Socket通信方面的内容就可以了。
friend555 2009-01-13
  • 打赏
  • 举报
回复
现在也是用Socket,但是我不知道怎么用
ouyan88 2009-01-13
  • 打赏
  • 举报
回复
不知道,帮顶。
以前做java好像是用socket

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧