易语言js返回值回调返回值的问题

【图片】新手求教:所用的dll接口中有回调函数,易语言怎么调用?_易语言吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:150,285贴子:
新手求教:所用的dll接口中有回调函数,易语言怎么调用?收藏
VC++编译的dll中有个接口是:bool dllApi(HANDLE, char*, CALLBACK);其中CALLBACK是回调函数,其原型为:typedef void (*CALLBACK)(char*);我要在易语言中使用dllApi这个接口,请问第三个参数CALLBACK这里怎么写?谢谢啦!
CALLBACK被宏定义为__stdcall 易语言几乎所有的函数都是这个,那么不写就行了
我还是新手呢,不懂这些?
CALLBACK 在易里写成子程序指针就行, 参数照抄.
填 &子程序名
返回值没有填上CS
遇到新问题,这个dll的这个接口,我在vc中测试是ok的,312次都可执行完成,而在易语言中,每次都在第13个失败,我让子程序的函数体为空,什么都不执行,也是在第13次失败,总之,只要dll的这个接口参数中有回调,就要在第13个失败,怎么回事?
刷机工具??
为啥要用e写
登录百度帐号子程序返回问题_百度知道
子程序返回问题
;画线子程序
;堆栈传递参数
;入口参数:起点坐标\画线长度\画线方式(水平\竖直)
;出口参数:无
PrintLine proc
mov al,3像素值
我有更好的答案
当然是子程序改变了返回调用者的地址。add sp,2
列号行号长度画线方式这一段指令的功能是取出调用子程序前压入堆栈的参数,但未保存能够正确返回调用者的栈顶指针SP,所以,后来恢复栈顶指针的pop sp必然是错误的。正确的方法可以有多种,这里提供一种:POP AX ;先弹出返回调用者地址列号行号长度画线方式PUSH AX ;将返回调用者地址压栈将后面的pop sp指令删掉。
采纳率:48%
为您推荐:
其他类似问题
子程序的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。SendMessage等消息被处理后才返回,难道在SendMessage在自己内部又不断调用GetMessage,直到自己发送的消息取出处理?
[问题点数:40分]
本版专家分:0
CSDN今日推荐
本版专家分:5507
本版专家分:5355
本版专家分:865
本版专家分:41
本版专家分:12476
2014年6月 C/C++大版内专家分月排行榜第二
本版专家分:1720
本版专家分:115008
2012年4月 荣获微软MVP称号2003年4月 荣获微软MVP称号
2008年2月 VB大版内专家分月排行榜第一2003年4月 VC/MFC大版内专家分月排行榜第一2002年11月 VC/MFC大版内专家分月排行榜第一
2011年11月 VC/MFC大版内专家分月排行榜第二2008年3月 VB大版内专家分月排行榜第二2008年3月 硬件/嵌入开发大版内专家分月排行榜第二2003年4月 其他开发语言大版内专家分月排行榜第二2003年4月 VB大版内专家分月排行榜第二2003年3月 VB大版内专家分月排行榜第二
2008年5月 其他开发语言大版内专家分月排行榜第三2008年4月 其他开发语言大版内专家分月排行榜第三2008年3月 其他开发语言大版内专家分月排行榜第三2003年3月 VC/MFC大版内专家分月排行榜第三2003年5月 其他开发语言大版内专家分月排行榜第三
本版专家分:2504
本版专家分:20
本版专家分:358020
2013年 荣获名人称号
2011年 总版技术专家分年内排行榜第三2010年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第五
2012年1月 总版技术专家分月排行榜第一
本版专家分:0
本版专家分:931
本版专家分:1720
本版专家分:1018
本版专家分:1018
本版专家分:4360
本版专家分:2608
本版专家分:178
本版专家分:7292
本版专家分:2274
匿名用户不能发表回复!|
其他相关推荐
[本篇全文] [回复文章] [本篇作者:wxstorm] [回信给作者] [进入讨论区] [返回顶部][分享到 搜狐微博]
1发信人: wxstorm (企鹅), 信区: VisualC标
题: SendMessage问题发信站: 水木社区 (Mon Jan 24 21:32:25 2011), 站内MSDN上说:SendMessage给另一个线程的某个窗体发送消息后,是直接发给了其消息处理函数,会等那个消息被处理后才返回。那这个消息处理函数是在哪个线程里执行的?调用SendMessage的线程还是窗体
首先简单说下SendMessage 与 obtainMessage() 的区别:
SendMessage 每次都要New一个新的对象,相对obtainMessage()虽然体会不到快慢,但是确实多占用内存,所以推荐使用Handler.obtainMessage()
package com.suchuanhong.
import android.app.Activity
SendMessage((HWND)this-&winId(), WM_USER+100, 10, 20);QT中重载winEvent()函数:bool frmMain::winEvent(MSG *message, long *result)
if(message-&message == WM_USER+100)
qDebug()&&&bool frmMai
原地址: http://www.cnblogs.com/zeroone/p/3713023.html
首先你会发现keybd_event函数中是没有窗口句柄作为参数的,好奇的你一定会觉得很奇怪,那是因为,keybd_event是全局模拟按键的,只对前台窗口(即当前的活动窗口)才可以,但是如果模拟的按键正好也是某个窗口的全局热键消息,那该窗口也能接收到的
而SendMessa
点击阅读原文现在易论坛很多人都喜欢在“发送消息”等操作时直接用数字,往往又不知道什么数字代表什么意思,也无从查起。比如,有人说16是关闭窗口,那么请问17是什么?绝大部分的人不知道,即使你去问C++高手,也是绝大部分不知道的。当初微软定义这些常量的时候,是为了让这些枯燥的数字更好记忆、阅读,可是现在很多易语言程序员却反其道行之,实在是不好的习惯。我来说一下“发送消息---SendMessage”的...
转载自:http://blog.csdn.net/liushinhwa/article/details/5135802
Windows是一个消息驱动式系统,SendMessage是应用程序和应用程序之间进行消息传递的主要手段之一,这里我搜集整理了SendMessage函数的详细参数介绍,以备自用。
DECLARE INTEGER SendMessage IN use
GetMessage () and PeekMessage ()GetMessage 其唯一用途就是从事件对列中获得消息,并进行处理。当程序在等待通过 GetMessage 传递的消息时,主事件循坏基本上是锁定的。那,如果我们要处理实时的事件循坏该怎么办呢?Windows 为我们提供了另一个函数 PeekMessage,他们的原型几乎是一样的,唯一的不同是 PeekMessa
PostMessage是把一个消息放到其他程序的消息队列之中并立即返回,目标程序收到了这条消息就把它放到该程序的消息队列去处理;而SendMessage则越过消息队列直接调用目标程序的窗口过程(多数情况下通过共享内存来实现),窗口过程返回以后才从SendMessage返回。
对于普通消息来说,PostMessage和SendMessage处理在处理速度上有所区别外,其他表现都相同。但是对于像WM_SETTEXT、WM_COPYDATA等参数中用到指针的消息来说,用PostMessage来发送消
Win32 API消息函数:SendMessage(发送消息)
函数功能:
该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程 序处理完消息再返回。而函数PostMessage不同,将一个消息寄送到一个线程的消息队列后立即返回。
函数原型:
[cpp] view
plain copy
GetMessage () and PeekMessage ()
GetMessage 其唯一用途就是从事件对列中获得消息,并进行处理。
当程序在等待通过 GetMessage 传递的消息时,主事件循坏基本上是锁定的。即,如果消息队列中没有消息,则GetMessage()不会返回,一直等待..
那么,如果我们要处理实时的事件循坏该怎么办呢?Windows 为我们提供了另一个函数 PeekMeForbidden, Please Refresh}

我要回帖

更多关于 易语言返回值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信