仅仅依靠Authorware 6.0本身的功能和它所提供的系统函数,来提高Authorware多媒体程序的灵活性是不够的。有些时候,用户需要利用其他的开发工具来生成用户自定义函数,用来拓展程序的功能。本章向大家展示的就是有关于这方面的应用。
1 概述
1.1 什么是用户自定义函数
UCD的全名是User Code Dll,是用户自定义函数的缩写。目前任何一种软件都难以满足用户各方面的需要,Windows的功能实在是太强大了,Authorware所提供的系统函数不可能将Windows下所能实现的功能都包括在内,因为它只是一个基于操作系统的多媒体开发平台,而且Authorware又是定位在非程序员的使用上,本身不必包罗万象。Windows 的主要优势和特点是共享资源,我们可以直接利用操作系统本身的功能来达到这个目的,因此Authorware采用开放式结构(MOA),提供一个通用的接口标准,给用户留下一个充分发挥能力的空间,让用户自己编写一些外部函数,以满足特殊功能的需要,从而实现对计算机更深层次、更广泛的控制。
利用C语言,程序员可以设计出能够为Authorware使用的DLL文件,但Windows的DLL是为专业编程人员创建的,标准的DLL格式和调用规则通常需要用户参考程序员的文档和Windows的API(Application Program Interface,应用程序接口)调用,对非程序员来说建立和使用都不方便。为避开这些,Authorware支持对于普通DLL的透明的扩充,这种方式就是UCD。编写Authorware中使用的DLL的C程序员,可以使用UCD来自动载入Authorware需要的信息,.包括函数名、参数、返回值的类型、语法模块和联机描述等,以便Authorware识别和链接DLL,而这些附加的自动载入的信息可以存储在DLL中,或分开存储,并且这些信息对于其他程序来说仍是透明的。这样就可以像调用系统函数那样,在Authorware的应用程序中调用外部函数,而无须去了解函数文件的底层信息。
我们常用的UCD一般有两个文件名相同而后缀名不同的文件,其后缀名分别是UCD和U32。实际上UCD和U32是相互对应的,后缀名为UCD的文件用在Windows3.x这样的16位操作系统环境下,而以U32为后缀名的文件则适用在Windows95/98/NT这样的32位操作系统环境下。
1.2 如何调用自定义函数
在使用自定义函数之前,首先要载入这个自定义函数。之所以要加载自定义函数,目的是使Authorware能知道存放该函数的地点,从而能够直接从磁盘上读取该函数。当一个自定义函数被加载后,就可以像使用Authorware所提供的系统一样来使用自定义函数了。调用自定义函数有两种方法: