哪位知道在VC中如何使用Winsock控件?哪里有关于VC中使用Winsock控件的全面介绍?在OnConnectionRequest事件中我加入了一个ctrlWinsock.Accept(requestID)接受远程连接(详见下面源代码),但是测试时,发现客户端刚连接上,马上server端就断了,再去连接还会重复这个现象,这是怎么回事?下面是部分代码:void CMyTest::OnButtonListen()
{
// TODO: Add your control notification handler code here VARIANT localport;
VARIANT localip;
CString strport;
CString strip;
VARIANT vtCommand;
CString m_command;
VARIANT vtData;
VARIANT vtType; localport.vt=VT_BSTR;
localip.vt=VT_BSTR;
strport="1234";
strip="192.168.1.1";
vtCommand.vt=VT_BSTR;
m_command="Server Send";
vtData.vt=VT_BSTR;
vtType.vt=VT_ERROR; localport.bstrVal=strport.AllocSysString();
localip.bstrVal=strip.AllocSysString();
m_ctrlWinsock.SetProtocol(1);// 选择UDP协议,1=UDP, 0=TCP
m_ctrlWinsock.Bind(localport, localip);
m_ctrlWinsock.Listen();}void CMyTest::OnConnectionRequestWinsockServer(long requestID)
{
// TODO: Add your control notification handler code here
m_ctrlWinsock.Accept(requestID);}void CMyTest::OnButtonStop()
{
// TODO: Add your control notification handler code here
m_ctrlWinsock.Close();
}void CMyTest::OnCloseWinsockServer()
{
// TODO: Add your control notification handler code here
m_ctrlWinsock.Close();
m_ctrlWinsock.Listen();
}
{
// TODO: Add your control notification handler code here VARIANT localport;
VARIANT localip;
CString strport;
CString strip;
VARIANT vtCommand;
CString m_command;
VARIANT vtData;
VARIANT vtType; localport.vt=VT_BSTR;
localip.vt=VT_BSTR;
strport="1234";
strip="192.168.1.1";
vtCommand.vt=VT_BSTR;
m_command="Server Send";
vtData.vt=VT_BSTR;
vtType.vt=VT_ERROR; localport.bstrVal=strport.AllocSysString();
localip.bstrVal=strip.AllocSysString();
m_ctrlWinsock.SetProtocol(1);// 选择UDP协议,1=UDP, 0=TCP
m_ctrlWinsock.Bind(localport, localip);
m_ctrlWinsock.Listen();}void CMyTest::OnConnectionRequestWinsockServer(long requestID)
{
// TODO: Add your control notification handler code here
m_ctrlWinsock.Accept(requestID);}void CMyTest::OnButtonStop()
{
// TODO: Add your control notification handler code here
m_ctrlWinsock.Close();
}void CMyTest::OnCloseWinsockServer()
{
// TODO: Add your control notification handler code here
m_ctrlWinsock.Close();
m_ctrlWinsock.Listen();
}
解决方案 »
- 我动态的调试窗口透明度无法实现 我是动态创建窗口的 在CFormView类的窗口中创建的
- udl
- ActiveX release 版本问题
- WINCE 自带数据库 查询出错
- 【点击菜单子项,消息响应函数失效】请帮忙看看什么问题,在线等~
- 一个有关base64算法的疑问 各位大侠请指教
- 怎么改变工具栏宽度阿,在线急等
- pDC->TextOut输出的字符串可以被copy下来嘛?
- CDialog中如何加一个视图?
- 怎样使IE的“Internet Options...”的“Home Page”的“Address”编辑框不可用?
- 怎样在一个程序中获取从另一程序的界面输入的数据
- 我用API函数改变了磁盘分区表的参数信息,怎样让系统得到通知呢?
VISCAL C++下WINSOCK CONTROL类(ACTIVEX)的使用