熟悉VC和C#的socket的同学,帮帮忙。

在我的电脑上,C和C#的服务器端、客户端是能够互相连上的。为什么C#的客户端却连不上网络上的服务器,而C的可以。下面是代码://///////////C代码#includ... 在我的电脑上,C和C#的服务器端、客户端是能够互相连上的。为什么C#的客户端却连不上网络上的服务器,而C的可以。下面是代码:
/////////////C代码
#include <windows.h>
#include <stdio.h>
#include <winsock.h>

SOCKET clisock;
clisock=socket(AF_INET,SOCK_STREAM,0); //定义套接口
struct sockaddr_in seraddr; //定义服务器地址
seraddr.sin_family=AF_INET;
seraddr.sin_port=htons(port);
seraddr.sin_addr.S_un.S_addr=inet_addr(ip);
ret=connect(clisock,(struct sockaddr *)&seraddr,sizeof(seraddr));
////////////C#代码
using System.Net;
using System.Net.Sockets;

Socket socket;
IPAddress ip = IPAddress.Parse(hostIPtxt.Text);
IPEndPoint severHost = new IPEndPoint(ip, 4000);
socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, rotocolType.Tcp);
socket.Connect(severHost);
也许是小问题吧,但是确实没连上,网络上的服务器指的是某网游的服务器。C写的可以连上,但是C#那个连接的时候就提示“服务器积极拒绝”。哎。。C/C++语言的界面不会做,才想到用C#的
------------------
我只是把那些部分省略了,只写了怎么连接服务器的那部分代码,C里面的WSAStartup当然是有的。C#中有这个种函数没?
展开
 我来答
zhao61
2010-10-03 · TA获得超过1459个赞
知道小有建树答主
回答量:1065
采纳率:0%
帮助的人:870万
展开全部
其实你C和C#代码本质上是一致的只不过.NET对底层的SOCKET API做了封装而已,所以不存在一个可以而另外一个不可以。单从你上面的代码真看不出来问题,但是应该只是小问题。
fox000002
2010-10-04 · TA获得超过3827个赞
知道大有可为答主
回答量:2356
采纳率:97%
帮助的人:1191万
展开全部
C 代码明显不对嘛

windows 下需要先 WSAStartup,并检查 socket 版本

还是先看看 MSDN 上的示例代码吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
粉可爱fxr
2010-10-02
知道答主
回答量:17
采纳率:0%
帮助的人:0
展开全部
好ihohihihifrrrikilgy柜台领域;评议与体育台人员的山地车;萨拉教学片是噢进行哦isjahdxsdhaoihd 机会isdhywqyudeiuygfjregfur 收到;拉胡德;上传大赛开始觉得uehfduehgufe受到上帝实施四大
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式