C# 计算机之间通过以太网电缆进行通信

C# 计算机之间通过以太网电缆进行通信,c#,.net,uwp,win-universal-app,C#,.net,Uwp,Win Universal App,我想用以太网电缆连接两台计算机,用户无需通过控制面板设置局域网,然后在我的应用程序的两个实例之间传输数据-每台计算机上运行一个实例 一旦我与每台计算机的IP地址建立了连接,我就知道我可以通过使用套接字、管道(?)、WCF。。。但这两台计算机也通过wifi连接到路由器,因此我如何告诉计算机,对于特定的IP地址,请使用电缆?(我可能弄错了。请随时纠正我。) 我可以使用UWP应用程序或.net(Winform/WPF)应用程序。这两种技术都很好。但这必须在代码中完成,而不是由用户通过控制面板设置局域网

我想用以太网电缆连接两台计算机,用户无需通过控制面板设置局域网,然后在我的应用程序的两个实例之间传输数据-每台计算机上运行一个实例

一旦我与每台计算机的IP地址建立了连接,我就知道我可以通过使用套接字、管道(?)、WCF。。。但这两台计算机也通过wifi连接到路由器,因此我如何告诉计算机,对于特定的IP地址,请使用电缆?(我可能弄错了。请随时纠正我。)


我可以使用UWP应用程序或.net(Winform/WPF)应用程序。这两种技术都很好。但这必须在代码中完成,而不是由用户通过控制面板设置局域网。另外,IPv6也很好。

每个网卡都有自己的IP地址,因此这两台计算机都有用于WIFI网络的IP地址和用于临时链路的另一个IP地址。 如果WIFI地址在192.168.X.X范围内,则可将特设链路的地址设置为一个IP段中的地址,例如10.0.0.1和10.0.0.2。
您的操作系统将知道哪个卡与每个IP段相关

System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()
开始

过滤掉Type=EtherNet接口并确保它们已启动。您可能还需要注意虚拟适配器等


从所选适配器可以获得地址信息等。IPV4地址可能足以让您开始使用。

要使用WebClient,其他计算机需要先运行Web服务器。“我想你得用插座了。”亨克沃特曼,谢谢。听起来不错。我会编辑的。有没有关于建立连接的想法?也许是插座?我无法想象一个有这么多分数的OP会有这么高的要求questions@LeiYang:)我在桌面上工作,更不用说网络/网络了。你说的是C#吗?他说的是硬件如果我理解正确,他会问如何告诉计算机使用一个网络(即席网络)而不是另一个网络(wifi网络)。它与C#无关,因为操作系统(或路由器)正在使用路由表处理它。@TalDelbari我不确定你的建议是什么。让我们一步一步地做这件事——我把电缆连接到两台计算机上。现在怎么办?设置自组织网络后,两台计算机都将拥有自己的IP地址(除了wifi网络已有的其他IP地址),谢谢。所以你是说我不需要处理相互识别的计算机。这将是自动的吗?我尝试过这个,但尽管我有一个
网络接口类型
NetworkInterface.Ethernet
-它的
操作状态
操作状态。向下
,尽管电缆连接到两台计算机。我是否需要以某种方式启用它?我甚至在
controlpanel\Network and internetwork Connections
中看到它在两台计算机上都是
未拔出的
(虽然它是物理插入的)。检查电缆类型(你需要一些特殊的calbe来直接连接两台电脑,尽管一些最新的操作系统可以做到这一点),并检查ip配置,将它们设置为同一网络,正如@Tal Delbari所说的,我已经很久没有这样做了。现代适配器应该是自动检测的,但是对于旧的硬件,您可能需要特殊的交叉电缆。通常是带红色插头的黑色。购买一个小型交换机(/路由器)可能会更便宜、更可靠。你可以通过查看电缆插座旁边的小灯来判断是否有合适的电缆。也许不适合笔记本电脑,但只要一面显示/闪烁绿色,您就有更好的机会让它工作。