我现在封装CAsyncSocket在一个动态库中,没有窗口,发现OnConnect等相关无法相应,应该有人遇到过如此问题,如何解决呢???不会要在动态库中创建个窗口吧?我把相关的代码移到对话框中就可以了,可是我必须在动态库中实现客户端,已经写了很多了,不想再改为api来写了,呜呜但我同事把CAsyncSocket封装在DLL中做了个服务器端,一点问题没有,事件也可以响应,我这边查了半天也不行?
解决方案 »
- 静态成员函数的问题
- 有关通用的SQL数据库操作类
- 菜鸟救助,获取编辑控件数据和发送数据到编辑控件
- 请问CView::OnChar(nChar, nRepCnt, nFlags);有什么用?
- 我用神龙卡(8471)开发VOD软件,用的是卡提供的SDK,播放MPG1的文件时,声音和视频都能从神龙卡输出.播放DIV5.0的MPG4文件时,视频都能从神龙
- 如何使工具条上的某个按钮禁用啊
- 关于MSFlexGrid控件显示数字的问题
- 关于VC里调用EXE的问题
- 用WinInet从http服务器下载文件
- 在C++中学习的一些知识如STL在VC中是否还有用,是否每一个C++程序都得最后转为VC程序员
- 在工具栏添加combobox控件的问题
- 在书上抄了一个程序,结果发现不能运行,不知道什么原因,郁闷
是否是创建个对话框,然后让CAsyncSocket对象为 对话框的成员,就可以了呢
2、你的窗口听创建是在哪个线程中无模对话框创建之后,你写没有写while (GetMessage (...))
{
TranslateMessage (..);
DispatchMessage (...);
}
类似的消息循环?估计你没有写
{
public:
CGPRS();
virtual ~CGPRS(); int OpenPort(DEVCONFIG* pDevConfig);
int WritePort(char* buf, int size);
int ReadPort(char* buf, int size, int timeout = 0);
int ClosePort();// Attributes
public:
CClientSocket m_Socket;
};我目的是创建这样一个类,CComPort是个纯虚基类,外部程序只需要调用接口,就可以发送数据了
所以,我也没起什么线程啊,比分说,ReadPort 如果有事件响应,那就在OnReceive中接收到数据填充buf就可以了我原先以为无模对话框,自然会有消息派发这些,是没写
while (GetMessage (...))
{
TranslateMessage (..);
DispatchMessage (...);
}
原先用CAsyncSocket就是想简单些的,如果要写
while (GetMessage (...))
{
TranslateMessage (..);
DispatchMessage (...);
}
具体该在哪写呢? 谢谢
to xstring(麻雀) ,我没有起线程,就一个CAsyncSocket对象
if (!AfxSocketInit())
{
AfxMessageBox("Windows sockets initialization failed.");
return FALSE;
}有谁可以给个简单例子吗,DLL中使用CAsyncSocket,不胜感激
[email protected]解决了立马接贴,谢了