首页 > 设计 > 媒体动画 > 正文

Authorware综合技巧:为Authorware设计用户代码文档

2020-09-19 18:41:54
字体:
来源:转载
供稿:网友

authorware5.0(以下简称aw5)是最流行的多媒体课件开发平台,功能强大,aw5本身包含有数百个函数和系统变量,而且还提供了用户代码文档接口(usecodedocument),以扩充其功能。在aw5的系统目录内,有多个扩展名为.ucd或.u32的文件,这就是用户代码文档文件,有macromedia公司自己开发的,也有第三方厂商或个人为aw5开发的。其中.ucd文件是在16位程序环境下运行的,现在已不适用,而.u32文件是为在32位应用程序下开发的,本文所指的用户代码文档即这一种。以前,开发aw5的用户代码文档须在vc++下开发,现在在dephi下也可以开发了。其实.u32文件就是一个dll动态链接库文件,不过还要加一个特殊的字符串资源才能被aw5识别,下面举例说明:

假设我们要实现这样三个功能的函数:打开光驱、关闭光驱、能够让aw5生成的无标题栏窗体自由移动。好像aw5中还没有实现这些功能的函数,就让我们来补充一下。


启动dephi5后,在“new”选项卡中选择“dll”进入动态链接库开发环境。在单元文件中输入:

librarymci;

uses

sysutils,mmsystem,//手工加入

windows,//手工加入

messages,//手工加入

classes;

{$r*.res}

{$rcdrom.res}//加入特殊字符串资源

functionejectcdrom:thandle;//弹出光驱

var

thishandle:thandle;

begin

thishandle:κgetforegroundwindow();

result:κmcisendstring(′setcdaudiodooropenwait′,nil,0,thishandle);

end;

exports

ejectcdrom;

functionclosecdrom:thandle;//关闭光驱

var

thishandle:thandle;

begin

thishandle:κgetforegroundwindow();

result:κmcisendstring(′setcdaudiodoorclosedwait′,nil,0,thishandle);

end;

exports

closecdrom;

functionmovetitle:thandle;//移动窗体

var

thishandle:thandle;

begin

thishandle:κgetforegroundwindow();

result:κsendmessage(thishandle,wm-syscommand,sc-move+htcaption,0)

end;

exports

movetitle;

begin

end.

用文本编辑器输入以下文字作为资源文件(一定要注意函数名要和dll文件中真实函数名相吻合):

dll-headerloadoncalldiscardable

begin

″ejectcdromι0″,

″closecdromι0″,

″movetitleι0″,

″ι0″

end

ejectcdromdll-headerloadoncalldiscardable

begin

″ι0″,

″lι0″,

″ssι0″,

″result:κejectcdrom″,

″ιrιnιrιn″,

″弹出光驱,aw5插件,dephi5制作,作者:徐进″,

″ι0″

end

closecdromdll-headerloadoncalldiscardable

begin

″ι0″,

″lι0″,

″ssι0″,

″result:κclosecdrom″,

″ιrιnιrιn″,

″关闭光驱,aw5插件,dephi5制作,作者:徐进″,

″ι0″

end

movetitledll-headerloadoncalldiscardable

begin

″ι0″,

″lι0″,

″ssι0″,

″result:κmovetitle″,

″ιrιnιrιn″,

″移动整个窗体,aw5插件,dephi5制作,作者:徐进″,

″ι0″

end

将这段文本文件保存为cdrom.rc文件名并放置到dephi目录下bin目录中。找到brcc32.exe文件,用它将该文件编译为cdrom.res资源文件。方法是在开始菜单中的运行中输入“brcc32cdrom.rc”后,回车即可。把cdrom.res复制到刚才的dephi工程文件中的目录,选择projects菜单中的rebuildallprojects即可生成dll文件。将生成的dll扩展名改为.u32,这个用户代码文档就生成了。启动aw5,单击在函数窗口中的[load]按钮,引入生成的u32文件,aw5就马上识别出了这三个函数,并带有说明文字。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表