2011-12-21 48 views
0

我有一个基于C#的服务器和一些VB6客户端试图连接到。问题是,似乎客户只是随机“丢失”的消息。 myWinSock.Protocol从来没有设置任何地方,所以无论默认值是什么客户端的WinSock将是。如果默认是UDP,它将回答我的问题并解释数据包的丢失。VB6中的默认WinSock协议

是VB6的默认协议WinWock UDPTCP

+1

如果一方试图使用TCP而另一方尝试使用UDP,那么它确实无法工作。 – 2011-12-21 20:22:20

+1

尝试在两端使用wireshark来查看服务器端发送的数据以及客户端正在接收的数据。 – 2011-12-21 20:23:00

+0

@Shane Wealti,是的,我想尽可能多,但我想消除所有潜在的问题,我可以。 – kmarks2 2011-12-21 20:36:05

回答

2

在VB6中,控件的属性在设计器中设置,并且没有生成属性设置代码来备份属性表中的选择。

所以你不能仅仅通过查看IDE显示给你的VB6代码来判断。

你可以做的是单击winsock控件图标,看看哪些属性出现在网格中。

如果你想用这种方式分析一堆文件,你可以看看*.frm文件的原始内容,在这个文件的开始你会看到设计器网格中控件的属性设置。

也就是说,winsock的默认协议是TCP。但是你永远不知道是否保留了默认设置。

+0

哇。非常感谢,我会尝试一下。 – kmarks2 2011-12-21 20:26:58