Omo 发表于 2008-3-3 10:02:21

Macro-键盘宏指令(08.08.03修改)

原版不爽....修改之....感谢crack4000,正是他的探索和源码,让我明白了原版macro为什么没法用...::?\dk
个人只编译了sgold的,cx65测试运行通过....
=============
08.03.04

由于某个函数(AddKeybMsgHook_end)的问题,08.3.3版的 elf 个别机型不能使用。。现更新为 macro_sgold_a 和 macro_sgold_b ,请先下载测试,根据情况选择使用。。。

=============
增加功能:

1. 可以使用小写字母,具体看下面的操作说明....编写mac时大写输入灰常之不方便的说...
2. 加入暂停功能,暂停符号为“=”... 运行遇到“=”,标题显示pause,并且延时x毫秒(可配置),此时默认按*键(可配置)继续运行,默认按#键(可配置)终止运行....这是为了方便编写和调试mac文件....
3. 可注释,注释符号为/,意即两个/之间为注释,例如:/注释/,或者/*注释*/...
4. 可运行功能地址,在两“`”内填写功能地址即可,例如:`MESG_WRT_NEWEMS`,这是“新建短信”....
5. 运行中可随时按任意两键结束,可在配置项中取消设定....不设置单键结束是为mac的扩展性考虑....

=============
提示:

mac代码中的换行与回车(分别对应ASCII码10与13),以及“;”为无意义,运行时会被跳过....因此可任意使用....源程序既是这样...

=============
bug:

1. 两“`”内的文件地址不支持中文字符....不多解释,老问题了...
2. 暂停时(即pause状态)按继续或结束按键之后,mac标题竟然不能显示了,本人愚笨,至今未能解决此问题,只知道此为加入按键判断key_hook所致....望高手赐教....

=============
操作说明:

0-9*#0-9*#键
@绿键
!红键
L/l左软键
R/r右软键

+按下 /方向键
<向左 /方向键
>向右 /方向键
^向上 /方向键
V/v向下 /方向键

J/j上网键/Pocket button
[/u声音+ /侧键
]/d声音- /侧键
%random numeric key(0-9) /不明白 >_<!...
$random numeric key(2-9) /不明白 >_<!...

按键状态:
~长按 /可通过配置项“按键延时”配置长按时间
_按下
|勃起 / >_<!...

=暂停(pause状态) /配置项“(=)延时(pause状态)”
空格/.延时(0.2秒) /配置项“(.)与(空格)延时”
P/p延时(1秒) /配置项“(P)延时”
W/w待CPU降至?% /配置项“(W)待CPU降至?%”
                                                            
`0:\apps\opera.jar`/`MESG_WRT_NEWEMS`/运行文件或功能地址
(1234)/延时1234毫秒
N/n 极速调用地址/需在配置项“(N)功能地址”中输入地址,如:A08DF43B

=============
下面的解释看不明白就算了,不影响使用.... >_<!...

配置项中的delay_wait_1、delay_wait_2、delay_wait_3是原作者的三个延时设定,原封未动,不中文了,中文要解释清楚不容易...源程序中,delay_wait_1、delay_wait_2、delay_wait_3会在运行文件,以及“(W)待CPU降至?%”中起作用,其中:delay_wait_1会和“按键延时”以及“(P)延时”组合...delay_wait_2是那个不断地计数的时间间隔....delay_wait_3是“(W)待CPU降至?%”后延时运行下个指令的时间....

=============
mac示例文件test.mac内容:
~! `MESG_WRT_NEWEMS` /*新建短信功能地址*/ P=/*暂停*/ ~#1/*选择第1输入法*/ (3000)/*延时3000毫秒*/ !

[ 本帖最后由 Omo 于 2008-3-4 11:02 编辑 ]

crack4000 发表于 2008-3-3 13:11:47

OMO就是强啊,这么短时间就搞个这么大的改动.
%random numeric key(0-9) /不明白 >_<!...
$random numeric key(2-9) /不明白 >_<!...
是产生随机数,第一个显然是0到9的随机数了,第二个自然是2-9,至于为什么这么设计也许作者有独到的用途,呵呵.

crack4000 发表于 2008-3-3 15:03:17

非常不幸啊,我的C65运行LZ的修改版没反应.不知道为什么难道C65和CX65差异很大吗.暂时只能用我自己修改的版本了,没那么多能,郁闷.

Omo 发表于 2008-3-3 15:38:44

回复 3# 的帖子

呵呵。。多谢指教。。。。

不能运行看来可能是AddKeybMsgHook_end这个函数的作用。。。我的cx65对AddKeybMsgHook不感冒,只能用AddKeybMsgHook_end。。。你把AddKeybMsgHook_end换成AddKeybMsgHook也许就OK了。。。我在学校不方便编译。。。

crack4000 发表于 2008-3-21 20:28:51

不知道B版改了哪里啊,我自己改AddKeybMsgHook_end成AddKeybMsgHook编译出错,是不是AddKeybMsgHook不支持返回啊.唉,我对LIB函数还是不太明白.有空请多多指导啊.

binghelingxi 发表于 2008-3-21 20:37:19

回复 5# 的帖子

不用判断返回值。

askman_1 发表于 2008-3-22 13:09:31

哪个老大把标题的日期改改,,,太怪了 08.08.03

crack4000 发表于 2008-3-22 13:35:13

另外,我发现B版有个小问题,就是不用同时按两键就能终止宏的运行,我试了在BCFG中设置好两键终止,时随便按一个键就停,而不选宏就停不下来直接结束。

迷恋你的香水 发表于 2008-3-22 13:52:17

08.08.03为何时?
好像还没到,呵呵
::\\shx

starasd 发表于 2008-7-26 14:40:34

强哦。。。谢谢LZ

bt911 发表于 2008-9-3 14:04:28

国外论坛是挖来的08.09.3更新
大家可以试试

Wang 发表于 2009-5-5 10:36:58

我用1楼的macro源码(Macro_Omo.rar)编译NSG的,可是在S75上运行后生成的bcfg文件不正常,是空的(字节数为0),请问是什么原因?
页: [1]
查看完整版本: Macro-键盘宏指令(08.08.03修改)