读书人

请问下关于CSocket的有关问题

发布时间: 2013-09-05 16:02:06 作者: rapoo

请教下关于CSocket的问题
我写了个客户端的线程如下:
UINT SocketCom(LPVOID param)
{
CSocket sockConn;
sockConn.Create();
sockConn.Connect("127.0.0.1",60000);


while(1)
{
sockConn.Send (sendBuf,sizeof(sendBuf));

error_num=sockConn.Receive(recvBuf,sizeof(recvBuf)) ;

if(error_num<=0)
{
sockConn.Close();

}
TRACE("%s",recvBuf);


}

但是运行的时候报错
error C2664: “BOOL CAsyncSocket::Connect(LPCTSTR,UINT)”: 不能将参数 1 从“const char [10]”转换为“LPCTSTR”

也就是connect那个函数IP地址写的不对,谁能帮我看下么,参考了其他的代码好像也是这么写的,但是我就是报错,还有就是我这个网络线程是否写的对?
[解决办法]
改为
sockConn.Connect(L"127.0.0.1",60000);
试试
[解决办法]

引用:
改为
sockConn.Connect(L"127.0.0.1",60000);
试试

加L的字符串是Unicode编码的,不加的话,就是普通的ANSI编码的。
[解决办法]
这个问题是新手都有可能遇到的问题,其实就是字符集的问题,在 打开项目->属性页->配置属性->常规->字符集->修改为使用unicode字符集这里可以选择不同的字符集,至于字符集的差别,lz还是google吧

读书人网 >VC

热点推荐