VC/MFC
VB
Delphi
C++ Builder
C/C++
Java
.NET技术
MS-SQL Server
PowerBuilder
DB2
Oracle
Web 开发
Linux/Unix社区
硬件/嵌入开发
移动平台
您的位置:
程序门
->
vc/mfc
-> 进程/线程/dll
dll 中如何触发onreceive事件?急!
[
收藏此页
] [
打印本页
]选择字色:
默认
灰色
红色
黄色
绿色
橙色
紫色
蓝色
褐色
墨绿
深蓝
赭石
粉绿
淡绿
黄灰
翠绿
综红
砖红
淡蓝
暗红
玫瑰红
紫红
桔黄
军黄
烟灰
深灰
灰蓝
背景色:
默认
黑色
红色
黄色
绿色
橙色
紫色
蓝色
褐色
墨绿
深蓝
赭石
粉绿
淡绿
黄灰
翠绿
综红
砖红
淡蓝
暗红
玫瑰红
紫红
桔黄
军黄
烟灰
深灰
灰蓝
字体:[
大
][
中
][
小
]
dll 中如何触发onreceive事件?急!
发表于:
2007-10-18 15:49:40
楼主
现在要把原来的基于多对话框的mfc工程,做成dll。这个dll主要作用是和服务器之间发送请求和接受请求。
现在的问题是发送和服务器端的接受都没有问题,服务器端的回应信息,客户端收不到,总是触发不了onreceive()。
后来调试查其原因,可能是因为把原来的消息触发的模式,写在dll里得把这个系统流程中调用的函数顺序的写到一个
dll中要导出的一个接口函数中,这样系统就按顺序一个一个函数的执行,即使中间收到了服务器发过来的信息,也没有机会调用
onreceive()。如果在中间流程中让他执行一个afxmessagebox(),系统就会在弹出消息框之前的一瞬自动触发onreceive。
但是我们的dll是要被java调用的,不能弹出消息框,不知道有什么解决办法。
小弟刚接触vc,对这些内部机制不是很清楚,望高手帮忙,谢谢!!!
发表于:
2007-10-18 16:00:00
1
楼 得分:
0
lz没有必要打出流程吧,只需要导出关心的数据就可以了。
让dll内部处理这个流程,上层只获取想要的数据,就没有问题了。
发表于:
2007-10-18 16:36:16
2
楼 得分:
0
楼上的“让dll内部处理这个流程,上层只获取想要的数据”
小弟还是不太清楚,请指教。
因为原来的工程是基于多对话框,还有view什么的,现在要把他做成dll供java调用,这个dll就不能有任何的显示,所以也不能有什么人工触发的机会,所以就得把这个流程中调用到的函数顺序写下来,这中间要和服务器交换信息,可是服务器发过来的信息应该是收到了,可是这dll没有办法触发onreceive,就没法最终得到结果。在测试的过程中发现,如果在发送请求后加个afxmessagebox,系统就会在弹出消息框前触发onreceive。由此感觉好像是消息收到了,但是没机会去触发onreceive,可是在弹出消息框之前,系统暂停了一下,就有机会调用了,这里面的机制不懂,所以说得有些可笑,不知道说明白没。
发表于:
2007-10-18 16:54:35
3
楼 得分:
0
onreceive是消息回调函数,一般是casyncsocket或派生类封装好的,不用你去触发的.
发表于:
2007-10-18 17:20:08
4
楼 得分:
0
在dll内部接收onreceive。
应用程序向dll传一个回调函数,dll收到信息后,用回调函数把信息传给应用程序
发表于:
2007-10-18 17:24:03
5
楼 得分:
0
onreceive是系统中内部触发的,不需要lz关心。
lz关心的应该是数据如何处理,上层如何调用处理完的数据,而不是由java来处理。
发表于:
2007-10-19 10:59:39
6
楼 得分:
0
主要是系统内部触发不了onreceive,不知道为什么
发表于:
2007-10-19 11:24:11
7
楼 得分:
0
在dll中你也可以用api函数来实现,可以建一个线程,在里面监听数据包,然后进行处理.
发表于:
2007-10-23 18:12:23
8
楼 得分:
0
我在发出消息后,调用了csocket类的processauxqueue()函数,问题迎刃而解了。这个函数本来应该是socket机制中csocket::onsocketnotify()调用的,而它自己没起作用,我就手动调用了。这个函数就是循环判断socket缓冲区中是否有信息,如果有就调用cansyncsocket::docallback(),这里又调用onreceive().
发表于:
2007-10-23 19:42:36
9
楼 得分:
0
答案总是在自己经过一番思考、尝试后才能真正找到。
下一篇:
有没有办法在启动一个线程后,将此线程"交给"另外一个进程.
上一篇:
要做监控的程序,但是写的总觉的不满意,请大家给些建议
相关文章
使用静态链接库时,为什么还提示没有找到dll
关于mac码?
图片怎么显示不出来呀
请教:只有一个窗口客户区的hdc,怎样获得客户区...
全新《vc++编程宝典》,含光盘,买回来就没看过,...
请问各位大侠:clearcase怎样集成到vc.net?多谢...
com+ 应用组件无法关闭,cocreateinstancee...
关于读取excel的问题
刚刚进公司,负责网络流量检测的模块,大家帮帮忙...
不同模板的几个视图如何共享一个文档
cstring???????
截取固定长度的字符串
本公司招 c++ 程序员
怎么取消csplitterwnd的滚动条?
为什么这个stdmethod(load) ( lppro...
flash 控件 和vc6.0交互
急,在线等待高手指点下这个简单问题出在哪?
新手提一vc小问题,麻烦各位大侠帮忙--->定加分...
学习atl
vc7里面如何使用activemovie啊?
其他资讯
怎么在线程外面结束一个线程!
关于image_import_descriptor结构
如何在msflexgrid的第一列插入checkbox
vc关闭后msdev.exe进程没有退出?
请问:关于位移方面的
请教,如果读cpu的msr。
sdi中怎么在框架类中获取视图类的指针??
关于cstring中getbuffer函数接受数据库返回字符串...
请问各位大大,freelibrary之后,dll里面的线程是...
opengl视图用鼠标旋转了任意角度,现在如何恢复到...
控件旋转问题:
对话框模态性的转移
chtmlview::onnewwindow2 为什么window.ope...
来看看这两个函数有啥区别?
如何让一个ie窗口点击x按钮关闭关不掉?
学网络通信有一段时间了,可还是不知道网络通信是...
请教一下使用cwnd类创建和显示窗口
如何从注册表里提取[ 添加/删除程序 ]...
求救!! 怎样导出richeditctrl中选中的图片?...
如何代码控制编辑框获得焦点?
快速检索
分类导航标签a
Linux/Unix社区GForge
扩充话题体育沙龙
VC/MFC资源
.NET技术VC.NET
其他开发语言Office开发/VBA
palm os招聘及招标
《程序员》杂志广告咨询
社区支持社区电子杂志
专题开发/技术/项目多媒体/流媒体开发
VC/MFC资源
DelphiGAME
其他数据库开发SQL
其他数据库开发其他
Web 开发PHP
Web 开发PHP
最新资讯
delphi 操作excel的问题
转投j2me是否有前途?
现在学习游戏开发,但是发现好多的数学知识都忘记...
我的机子是dell6400,装了vs2005,安装完后重新启动...
关于对象判断是否相等问题
大家看看,进来拿点分!!!
c/c++开发人员急需 。。。
高手进来帮帮忙啊,一个棘手的滚动条问题!!
菜鸟请各位高手出手相助了
如何用vc++实现平面圆的delaunay三角网格剖分&nb...
不是合法的win32应用程序
net是用c写的吗?
如何关闭form
怎么实现图文混合编辑和保存(不要freetextbox)...
建了一个新帐号,老帐号是tengfei2004,msn:zhouf...
郁闷死了,关于笔记本无线上网的问题,请个位大侠...
jsp中调用存储过程的指针参数
为什么我创建一个子窗口时,创建动作会重复20次?...
这是什么代码啊?
高手们,页面跳转问题,进来看看吧!!
vc如何不安装客户端访问oracle数据库
exchange 2000日志疯长问题
求教:vb连接obdc中sql建立的.mdf数据...
如何在vc环境下将一字符串一256色位图形式保存??...
关于服务器限制附件下载问题
我是初学者,麻烦各位给解决一下:网页错误:缺少对...
在visual studio 2005做asp.net的设计...
聊天室注销(头痛问题)
文字已显示出来!但文字上下重叠,如何办?
请教如何用delphi做个监听程序判断机器是否打开某...
支援山区的一批老式数码相机在xp下无法使用????
关于在c++中用命令行调用java程序的问题
请问学习java和.net出来分别可以做什么?
还是一个c++函数调用问题
[大飞猪] 为什么我不能问我的马甲被封杀到什...
再问关于活动的菜单 (高分)
做了和用户控件!出错了帮看一下!
c#.net里static的作用是什么
请问 vs2005 中怎么对应用进行签名,找...
数据库转换成mssql后出来的这种错误怎么修呢。
热门点击
问下有关服务器的问题,虽然在这里问不合适,嘿嘿...
linux下装apache时出现“cannot install&nb...
100分求助:swing和数据库操作的问题;
navigateurl后面加变量报错,急!
女朋友跟我差不多高.想增高.犹豫中
vc中求一个数的下限的函数是什么啊,急用!
客户端通过设置ie的代理上网,如何调用外部服务器...
c#2005中的winform中怎样让datagridview中的第一...
[谢谢]字段x在数据库中的值是2.36669988,我只想...
6年了,时间好快啊
jfreechat的问题
应聘java程序员
.net 2005和vs6哪个先装比较好
室内设计专题免费讲座
datagrid绑定问题
java岛技术联盟(高级)群号52673349本群只收工作...
请问如果将datagridview中的数据[手工添加的]转为...
有没有js的编辑器for vs2003的,最好安装直...
请问各位老大,各种服务器(比如hp,ibm,dell等,及...
如何在datagrid中加入一列序号列呢?
穷举
【弱智问题】winform里的textbox的enabled属性和...
辛辛苦苦做了两个月的网站,怎么会这样,急求支援
用dbms包如何绑定参数到这样的sql上,在线,急
刚从asp/asp.net转来jsp,请教下关于缓存的问题
各位大侠帮帮忙,有一条sql语句总出现ora-00936,不...
有关在vb中引用shimgvw.dll的问题
求助一道算法分析题目,关于时间复杂度的
关于table中的tbodies
用汇编编个十六进制转十进制的
怎样侦听文件或目录的变动
ppc上如何实现对不同无线路由器连接的自动切换?...
能否取消某个字符串的输入?
opensmtp发送邮件的问题(553 错误)
做查询表单,请帮帮忙
求助:我下面这段小程序编译时出现如下一些错误,...
请问要批量修改窗体左上角的图标,有什么好的办法...
吐血求救_一個困擾了我2周的大難題_text類型數據...
100问一个vss2005的问题,解决马上给分
随机函数的小问题