如何使用c语言监听已打开的端口数据

如何使用c语言监听已打开的端口数据,第1张

socket编程悉歼完全能实现 。。tcp来说 。。。socket() ,,bind(),,accpet(),,就ok了,,accpet()成功返睁亏冲回的时候就是 有数据可读,,,最好加了select()空局

以一种访问权限不允许的方式做了一个访问套接字的尝试。

一般就是辩凯因为端口被占用

IPAddress Addr=IPAddress.Parse(this.hostname)

TcpListener server = new TcpListener(Addr,port)

server.Start()

-----------

如果你已在此地址上做了发送数据的socket或tcpclient或udp,那么这个监听和发送在同一个端口上就会发生错误的。

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

{

// Set the TcpListener on port 13000.

Int32 port = 13000

IPAddress localAddr = IPAddress.Parse("127.0.0.1")

// TcpListener server = new TcpListener(port)

server = new TcpListener(localAddr, port)

// Start listening for client requests.

server.Start()

// Buffer for reading data

Byte[] bytes = new Byte[256]

String data = null

// Enter the listening loop.

while(true)

{

Console.Write("Waiting for a connection... ")

// Perform a blocking call to accept requests.

// You could also user server.AcceptSocket() here.

TcpClient client = server.AcceptTcpClient()

Console.WriteLine("瞎灶腔Connected!"磨衫)

data = null

// Get a stream object for reading and writing

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()

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12470887.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存