新人想要了解win32中的套接字编程。我知道一点MFC,但这不好开始,因为它只是隐藏了程序员的内部细节。
答案 0 :(得分:2)
使用winsock函数(Winsock2.h)。
答案 1 :(得分:2)
Beej的指南是一个非常常见的起点。自从我开始使用这些东西已经有几年了,但iirc,指南使用Berkeley套接字并在适当的时候指出与winsock的差异。
答案 2 :(得分:1)
MFC会模糊一些细节你是对的,我不知道为什么他们决定把它包起来。
有很多关于WinSock编程的好书和教程。这是一个;
答案 3 :(得分:1)
答案是使用win32套接字API。
MSDN中有关于此API的信息。
它(所谓的'Winsock'API)类似于(基于)Unix / Posix API,因此与MSDN一样,关于在Unix上使用套接字的许多文献(书籍)也是相关的。 / p>
谷歌搜索会找到代码样本,大概是。
您需要了解一些关于网络的信息:例如,“IP地址”和“端口”是什么。
您需要选择协议(UDP或TCP)。
Win32的不同之处在于,当您有连接的套接字时,可以使用ReadFile和WriteFile,这意味着您可以使用与ReadFile和WriteFile相关联的重叠I / O选项。
答案 4 :(得分:1)
我完全同意ChrisW,并赞扬你传递MFC。
有关很多出色的WinSock信息,请参阅MSDN Winsock Reference。
另外,虽然它可能太大而无法学习,但我认为这是一个非常好的Socket Server Class - 请告诉我你是否觉得它有用。
答案 5 :(得分:1)
一个小提示(假设您正在使用Visual Studio和Winsocket librabry),您需要手动链接WS2_32.Lib。我发现这个小步骤是许多初学者错过的东西,并且因为它而得到一些奇怪的错误(在旁观者的眼中很奇怪)。 http://social.microsoft.com/Forums/en-US/vcgeneral/thread/cfefa4a5-1f1a-4987-8bc7-f3197cb5826c
也; imho你不应该使用MFC。在google-net上有很多很棒的针对winsocket编程的指南:)
祝你好运
答案 6 :(得分:1)
我建议看看
Getting Started with Winsock (Windows)
以及
Unraveling the Mysteries of Writing a Winsock 2 Layered Service Provider
答案 7 :(得分:0)
两个选项:
第一个选项意味着编写“锅炉板”代码,这样您最好使用第三方库。
串口编程最常见的“启动故障”是与设备建立通信链路。您需要对端口名称,波特率,奇偶校验等进行正确设置(通常由设备制造商提供)。
然后还会有一个设备的'命令集'。例如,如果您发送'?'对于设备,它将返回设备信息,如制造商名称等('?'命令是一个示例,它不是标准 - 命令集因设备而异)。
所有串行通信的工作方式如下: - 您将命令写入串行端口 - 轮询读缓冲区以获取来自设备的响应
据我所知,C ++或MFC中没有内置的串口通信类,但是有很多第三方库。