我是一位网络小白,请您以极其简单易懂的方式解释(似乎每当涉及网络相关的事情时,人们就开始使用完全不同的语言)。我是一名经验丰富的 C# 程序员,但在机器之间的通信方面缺乏一些技能。
情景是这样的:我正在使用一款通过 TCP/IP 与其他设备通信的产品。是否可能制作一个仿真程序,它像 TCP/IP 连接一样运行(在我的本地计算机上),以便我可以通过设置 IP 地址(和端口)将我的其他程序连接到它,并返回任何模拟/测试数据?
我是一位网络小白,请您以极其简单易懂的方式解释(似乎每当涉及网络相关的事情时,人们就开始使用完全不同的语言)。我是一名经验丰富的 C# 程序员,但在机器之间的通信方面缺乏一些技能。
情景是这样的:我正在使用一款通过 TCP/IP 与其他设备通信的产品。是否可能制作一个仿真程序,它像 TCP/IP 连接一样运行(在我的本地计算机上),以便我可以通过设置 IP 地址(和端口)将我的其他程序连接到它,并返回任何模拟/测试数据?
是的:您可以设置TCP连接到在您自己的计算机上运行的程序。您应该使用的主机名是localhost
,或者IP地址是127.0.0.1
:另请参见Loopback (Virtual Network Interface)。
我之前已经做过这件事了。我创建了一组用于模拟各种技术的工具,您可以在以下链接下载:
http://www.codeproject.com/KB/biztalk/Excellence.aspx
这允许您设置要发送和接收的数据。您可能需要进行一些微调,但主要内容已经存在。
我相信您对 TcpReceiveMiniServer
感兴趣。
这是一个迷你示例:
static void Main(string[] args)
{
TcpReceiveMiniServer server = new TcpReceiveMiniServer(8789);
server.Start();
server.DataArrived += new TcpReceiveMiniServer.DataArrivedHandler(server_DataArrived);
Console.Read();
}
static void server_DataArrived(object sender, DataArrivedEventArgs e)
{
// do something with e.Data
}