L
leoyan
Unregistered / Unconfirmed
GUEST, unregistred user!
问题缘由:<br> 开发一CAI软件,教学内容为《几何画板》的使用。主程序用AuthorWare开发。<br>《几何画板》为16位程序,不支持OLE。由于教学过程中包含较多的演示,若采用截图<br>的方式记录与回放则有以下问题:<br> 1.若采用静态图则不容易说明问题;<br> 2.由于教学需要演示的屏幕范围较大,若采用动态AVI截图则容量太大,且速度慢。<br> 3.由于《几何画板》的工作方式特殊,手头能得到的所有截图软件都无法截下<br>《几何画板》的动画。<br><br>解决思路:<br> 利用Delphi5.0开发DLL作为AuthorWare的U32扩展函数,在扩展函数中实现利用hook<br>记录和回放键盘鼠标消息,从而使AuthorWare可以利用回放记录下的键盘鼠标消息<br>进行演示。<br><br>已作尝试和发现的问题:<br> 查阅win32函数的功能后(也包括这里的讨论),发现可以使用两个函数实现记录和<br>回放键盘鼠标消息:JournalRecordProc,JournalPlaybackProc。在网络上下载了一个<br>带源码的类似程序(TRecord)。经过运行程序和研究其源码,发现这两个函数也有问题:<br> 1.函数要求“当一个系统的有模式对话框正在被显示,直至此对话框被销毁之前,<br>挂钩过程必须停止对消息的回调”。因此当《几何画板》的操作中出现对话框时将无法<br>记录和回放消息,这将影响演示过程的完整。<br> 2.由于《几何画板》的工作方式特殊(为什么这样我也不知道),当回放到《几何<br>画板》进入动画后,后续的消息就得不到回放。<br> <br>请教如何解决这个问题?<br>如果需要《几何画板》可以到www.k12.com.cn下载或来信索取。