Chinaunix首页 | 论坛 | 博客
  • 博客访问: 628085
  • 博文数量: 603
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 4940
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-17 11:04
文章分类

全部博文(603)

文章存档

2011年(1)

2008年(602)

我的朋友

分类:

2008-09-17 11:13:21

[求助] Active与Socket

我在ActiveX控件上封装了Socket,做了一个C/S模式的,但是控件无法和服务器连接。哪位大哥大姐帮帮忙,先谢谢了。
1、我定义了定义了ClientSocket类,写法就是平常的写法,含:clientsocket.h,clientsocket.cpp
//实现部分
#include "clientsocket.h"

ClientSocket::ClientSocket()
{
Port=5150;
}

void ClientSocket::Create()
{
if ((Ret=WSAStartup(MAKEWORD(2,2),&wsaData))!=0)
{
{
cout < <"WSAStartup failed with error" < }
if((s=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP))==INVALID_SOCKET)
{
cout < <"socket failed with error:" < WSACleanup();
return;
}
}
ServerAddr.sin_family=AF_INET;
ServerAddr.sin_port=htons(Port);
ServerAddr.sin_addr.s_addr=inet_addr("192.168.0.101");
if(connect(s,(SOCKADDR*)&ServerAddr,sizeof(ServerAddr))==SOCKET_ERROR)
{
cout < <"connect failed with error:" < closesocket(s);
WSACleanup();
return;
}

}

bool ClientSocket::Recive(float p)
{
return false;
}

在ActiveX控件部分的情况是这样的:
CFPShowDataCtrl::CFPShowDataCtrl()
{
InitializeIIDs(&IID_DFPShowData, &IID_DFPShowDataEvents);
client_S.Create();//////启动连接
m_dNumber=0;
dtime=1000;
m_pQueue=new CQueue();
m_nPointPerGrid=10;
ELENUM=XNUM*m_nPointPerGrid;
m_colorLine=RGB(220,190,200);
}
执行时,控件的界面能显示,就是控件无法和服务器连接。


--------------------next---------------------

阅读(227) | 评论(0) | 转发(0) |
0

上一篇:上一主题

下一篇:显示可打印版本

给主人留下些什么吧!~~