通过以太网从C或C ++发送数据

时间:2013-08-15 13:56:12

标签: c++ c windows-xp command-prompt ethernet

我需要通过C或C ++程序中的以太网连接发送和接收一些数据。我想我可以使用像python这样的其他语言,如果它更容易。我正在使用Windows XP PC,虽然切换到Linux可能不是最方便的事情(这是我工作的PC)。我想这是一个选择。

我需要做的是发送一些号码,现在就说42,从我的电脑到以太网电缆另一端的PLC。我知道PLC的IP地址和端口。当我手动输入Hyperterminal或Putty时,我可以发送和接收数据。我想做的是让程序执行此发送和接收。发送是必要的,但接收也会很好。

到目前为止,我一直在尝试使用window命令提示符中的命令发送数据。我想如果这个工作,我可以使用C程序内部的system()命令来完成这项工作。到目前为止,我设法做的最好的是使用putty.exe telnet:xxx.xxx.xxx.xxx:yyyy其中x是PLC的IP地址,y是端口号。这可以通过与PLC的正确连接来启动油灰,但不会发送任何东西。我看到有人建议使用echo 42 | putty.exe telnet:xxx.xxx.xxx.xxx:yyyy,但那只是打开了putty连接并没有发送任何东西。有人建议使用net send xxx.xxx.xxx.xxx [message],但只是说我的域名无法找到用户名。

有没有人对从哪里开始有任何建议?是否有任何终端程序具有允许您从命令提示符发送数据的命令?是否有任何命令通过putty从命令行发送数据?谢谢!

1 个答案:

答案 0 :(得分:5)

看看Sockets。该文档主要用于unix环境,但API在Windows上几乎完全相同。您提到的telnet客户端是使用此API构建的。