2023年12月1日发(作者:)

制作漂亮、独特、功能强大的菜单程序,在光盘插入时自动运行,以

指导及帮助我们实现诸如驱动程序及各类应用软件的安装、系统的维

护、数据修复以及等等可以设想到的应用功能,这就是以下我们所要

讨论的内容。

能帮助我们实现这个目标的工具,大致有如下一些:

AutoPlay Media Studio——以下简称AMS

Multimedia Builder ——以下简称MMB

AutoRun Pro

Multi Install

Matchware Mediator Pro

Adobe Authorware

……

总的来说,以上工具各有伯仲,应用场合及功用也有所不同。

功能最强大的是Adobe Authorware,但庞大而操作复杂,

Adobe公司已经宣布停止其继续开发(最终版本为2003年推出的

Authorware7

比较容易掌握的,同时也是当前比较流行的,应该说是AMS

MMB

这两个工具的功能都十分强大,都具备WYSIWYG (所见即所

) 的编辑特性,都能制作出多风格的、互动式的多媒体光盘,并且

各有自己的用户群。

那些高高手们,一天能敲两千行代码的编程达人,会不屑于借

用上面提到的任一工具,他们可能直接就用VBDephi或者C++

界面,甚至把PB结合SQL调出来玩,因此,请这些大侠们忽略这

整个话题~~~

AMSMMB之间的区别,有点类似M$Frontpage相对于

AdobeDreamweave(不知这比喻算不算恰当?)——AMS

傻瓜,而MMB有更多想象及发挥的空间。

相异之处主要有以下几点:

1. AMS的编译架构比较臃肿,无论是制作过程还是最后的成

品,都需要乱七八糟地建一些目录,增加许多零散的图像、音乐、

视频及其它文件。——因此也导致它的创建操作让人提心吊胆,

而且稍不留神,它就变态地把你光盘所有的源文件全部复制一份到新

目录~~~

MMB简单清爽,它所产生的,仅仅不过是完全独立的单独一

.exe文件,编译完毕,放置到恰当的位置即可。

2. 相较于MMB的调试操作,AMS预览功能慢且不太直

观,略显麻烦。

3. 基于上述原因,AMS不便于量产,除非你完全理解它每

个文件、每个目录的功用并牢记在心,否则每次想作细微的改动,

会让你感到头痛。

4. AMS内置的动作及脚本功能较强,MMB中一些需要手工

编写脚本的动作,在AMS中可比较简单地完成。

5. AMS提供的了非常多的按钮插入便利,令一般MMB使

用者所羡慕。

两相平衡,我们认为MMB可能是更好的选择,而AMS可留

存以作备用。

以上是一家之言,或有不妥,或有遗漏,欢迎指正。

闲话了很多,现在进入MMB制作介绍。

Multimedia Builder 这个软件名称来看,MMB的开发目标

是用于多媒体信息的建立。确实如此,我们用它建立光盘菜单只是它

利用它现有功能的一部分,实际上,它还包含非常大的能量,用以制

MTV、个性播放器之类炫丽的互动媒体,如果你能接触到国内外

众高手的精典之作,一定会叹为观止的。

MMB,并把工欲善其事,必先利其器,首先我们要作的是下载

它安装到我们的机器中。

Multimedia Builder MP3 v 4.9.8 汉化版 下载:

IT姐妹官方提供电信100M光纤迅雷高速下载:

/mmbld498_

安装过程没什么特别的,装完后,就可以开始了

——

首先以制作一张非常简单的Nod32自动安装

光盘为例,介绍MMB的基本制作。

我们这里确定的目标是:将杀毒软件Nod32各个版本的安装程序、*****、以及更新等

方面的工具集中一起,然后用一个简单明了的菜单调用它们,制作成一张简单的小光盘。

光盘要实现的具体功能参见图15及图16(制作完成的程序界面)

前期工作一定要作好,那就是准备好光盘所需文件,构思好要制作的菜单结构、外形

及风格。

1. 首先,我们将准备作入光盘的所有文件集中到一个文件夹中,比如:E:Nod32,如图

(图1

1

2. 打开MMB,下图是它的运行界面(图2

2

3. 新建一个方案,将它取名Nod32_menu,保存到适当位置,比如E:My Documents

提示:这是MMB方案文件,不要保存到图1之源文件目录

4. 在菜单栏上点击方案方案设置,出现如下窗口(图3

3

在此我们设置好程序窗口尺寸、标题及其风格。

名词解释:

终端边框 为程序界面加上边框

全屏幕背景 程序运行时附带背景(遮盖你的桌面)

保存最后位置于注册表 每次开启时菜单程序在桌面上的位置定位到上次关

闭时的位置

关于非标准窗口及其设置见后文。

5. 在菜单栏上点击页面属性,出现如下窗口(图4

4

在这里我们可以设置页面标签、背景、页面过渡效果及增加背景音乐等

提示 1标签一般可以用默认值,但如果你页面较多,最好还是取一个有意义的名字。

2:背景可以插入图像,本简例只使用了背景颜色。

3:使用前景音乐及页面过渡效果可以丰富你的设计效果。

4:通过使用脚本可以实现更多功能。

5:关于母版页面的介绍,见后文。

6. 制作页面内容:

MMB的页面上可以放置文字、图片、动画、音频、视频、Flash等等几乎所有你能想

到的元素,甚至可以用插入捆绑对象的方式直接把某些程序集成到页面内执行(如果看到

人家MMB作出的程序可直接编辑Word文档,你千万不要感到奇怪~~~

置入的操作很简单,选择对象,插入到页面,然后设置它的来源、属性等即告完成。

MMB提供的对象以图标的形式排列在主窗口上边及左边(参见图2,我们只需选

择相应图标,然后在页面上所需位置点击或拖动,即可插入此组件。

提示 1:如果在视图工具栏中没选择对象工具栏(完整)的话,可能某些组

件不被列出。

2:使用菜单栏对象创建亦可完成对象插入。

本例各组件制作步骤如下:

A. 标题

插入文本,然后双击它,跳出如下窗口(图5

5

输入并设置好字体(样式、字形、大小等),确定后,用鼠标拖动它到合适的位置。

提示 1:文字位置可用光标键进行微调。

2如果我们要改变字体颜色,可以在勾选激活动作后进行设置,注意

将交互颜色三栏选为同一颜色。

3MMB的每个对象都是可以被激活的,我们可以设置各种动作来实

现我们各种功能。

名词解释:

隐藏 将对象隐藏,以后可通过动作来改变它的状态(隐藏或显示)

锁定位置 锁定对象位置,以免操作时不慎移动

固定宽度 允许手动调节文字框的宽度,否则文字框将自动适应文字宽度

抗锯齿 在多数情况下可改善字体显示效果

B. 文字信息

插入段落文字,双击它,跳出如下窗口(图6

6

输入并设置好字体,拖动它到合适位置,并调整好边框大小。

在此特意提醒一下,由于MMB国际性,对中文的支持仍不完美,插入的段落文

可能在运行时显示为乱码,建议一般情况下尽量采用插入文本而不是段落文字的方

式(业已证明文本方式避免乱码非常有效)

C. 按钮

1)安装按钮

插入文本按钮,双击它,跳出如下窗口(图7,我们输入文本,设置好按钮颜色。

7

名词解释:

提示 鼠标经过时跳出的小窗口文字

菜单项 按钮的另一种形式,显现为网页链接相似的无框文本。

光标 鼠标指向时的形式。

动作 鼠标点击或经过时的反应,包括:外部命令和页面动作与其它对

象的交互作用声音动作以及脚本编辑四个选项。

提示 1:这里我们使用的是最简单的文本按钮,平常看到的那些漂亮的、风格各异

的按钮,是用位图按钮的方法制作的,插入位图按钮的方法及设置见后文。

2:我们可以为按钮选择音效,加强多媒体效果

因为我们要在点击按钮时执行文件,所以须激活它的动作”——

点击

9

在编辑窗口输入脚本内容,然后确定返回。

提示 1:我们可以在向导的指示下完成脚本(上面窗口中点向导,可以导入原

来编写的脚本,也可以把当前脚本保存下来。

2:双击所编辑命令行可以自动调出脚本向导。

D. 参照以上步骤,我们逐一建立其它对象,调整好相互位置,这样,一个页面就完成了(见

10

提示 1:复制及克隆对象的方式可以帮助我们提高工作效率。

2:编辑网格/引导线,选择与之对齐,比较容易调正各对象位置。

动作的安排和设计,是MMB运用的一个重点,我们看到,除了运行程序外,可以

直接选用的动作还有:跳转页面、显示/隐藏对象、查看磁盘、浏览网页、播放及控制音频

等等,通过脚本的运用,可实现的功能更是数不胜数,可以说,只要我们巧妙合理的设置,

就可以实现想象得到的几乎所有功能,包括复合的多步的功能。

E.接着我们作第二页,在菜单栏点击页面添加页面

按第一页制作方法设置好页面属性,建立对象,调整位置,作好第二个页面如图11

提示:通常我们可以在菜单页面页面管理器中复制作好的页面为新页,然后进

行修改,这样可以简化工作。

10、图11

到现在为止,我们执行程序的命令都类似于E:这样,而刻成光盘

后执行文件将会是G:,显然,我们的执行路径会出现错误。

这就牵涉到需要改绝对路径为相对路径的问题,MMB为我们提供了宏路径(Path

macros这种形式。

下面我们就要用到宏路径之MMB的设计,这个将指向我们

现在制作的菜单程序所在的目录。

提示 1:更多宏路径介绍见后文。

2:请尽量在路径替换前请完成所有调试,因为换成相对路径后,测试功能

认可的指向的是MMB程序的安装目录。

因为我们准备将制作好的程序放在E:Nod32目录(也就是今后光盘的根目录),所

以我们的E:Nod32目录就是

打开菜单栏方案路径替换,出现以下窗口(图12

12

我们在搜索匹配字串栏中输入E:Nod32,在替换为栏中输入,然后

全部替换

下图是替换后的情况(图13

13

提示 1:除了命令外,其它如声音文件对象脚本一般均须进行替换(如

果有的话)

2替换整个路径表示无论原文件目录是什么,是否在下层目录,均替换为

下栏中的路径。.

9. 路径替换无误后,打开菜单栏文件优化尺寸,按确定

方案编译前必须优化尺寸,这样作的目的是去除设计过程中产生的临时文件。

10. 点击文件编译(或方案检查并发布,出现以下窗口(图14

14

确定之前我们需要作以下几项工作:

1)确定制作文件保存位置及名称

2)填写程序名称版权等项信息

3)将程序图标设置为自己的个性图标

提示 1方案编译时不能选择XP/VISTA图标,如果你对漂亮图标有特殊偏好,可在

编译完后到MMB安装目录中找到mmb_这个文件,用它就可以更换程序

图标为XP/VISTA风格图标。

2添加安全层意义在于保护程序不被别人修改,但将影响程序启动速度和

资源占用率。

3:如果不是制作自启动光盘,可不创建

4:文件名最好是不含空格的8+3模式,而且尽量不要命名为

因为现在Autorun病毒太厉害了,容易受波及。

5:我们也可以直接输出.mbd文件,供其它MMB方案调用。

设置完后,点确定,我们看到编译过程很快就完成了,E:Nod32目录下生成了两个

文件:

现在可以正式运行我们的程序看看了,如图15及图16

15 16

至此,MMB制作工作全部完成。现在就可以直接把E:Nod32目录下全部文件拖入

Nero,刻录成盘使用。

提示:换一种思维,如果把上述文件打包成一个自解压压缩文件(或者用Inno

Setup Factory之类安装工具专业打包),我们的成品就是 Nod32自动安装包了。

前面介绍的是最简单的一个样例,我们要作的当然不只是这样丑陋的

东西 下面我们用另外几个例子来说明MMB更多的功能:

1. 位图按钮的制作,见示例1

示例1

A. 光盘简介按钮,这是最简单的一种位图按钮

在工具栏上选择位图按钮,然后在制作页面上点一下,将跳

出如下窗口(图17

17

图像三个框内载入我们选定的图像,勾选透明化选项

提示 1MMB本身提供了一些位图按钮,但种类较少

2透明化安全色选项目的是屏蔽插入图像的背

景颜色

为了让按钮有的效果,在右下角重定义位图位置设置X

Y偏移为1-1,这将设置图像在水平和垂直方向偏移的数量

OK,一个简单的位图按钮就制作好了。

B光盘浏览按钮,稍复杂一点,我们的作法又不同。

首先我们需制作好两幅不同的按钮图像,分别对应于常态及鼠

标经过时的状态。

看看这个按钮的设置窗口(图18,你一定可以注意到图像

三个框内载入图像的不同。

18

提示 1:位图按钮是MMB产品非常重要的点缀,好的设想能

带来美的感受

2MMB官方推荐使用Real-Draw PRO制作MMB

素材。

Real-Draw PRO Mediachance 出品的一套倍受欢迎的矢

量图象处理软件,它结合了向量、2D3D 以及点距阵图形编辑等等

的工具,并且可以非常容易地转换。Real-Draw PRO 结合了许多种

的多种的图形编辑创造方式,而且非常的容易上手,其灵活的界面、

丰富的功能,将让你爱不释手。

Real-Draw PRO v4.02 特别版

IT姐妹官方提供电信100M光纤迅雷高速下载:

/hb_Real-Draw_

注册信息——

5

882455871252

除了文字按钮位图按钮MMB还支持使用透明按钮

(用Real-Draw PRO可制作透明按钮图像)

2. 母版及母版顶层,分组,以及显示/隐藏,以示例2来介绍。

示例2

母版的作用类似模板,用于多页面方案的重复应用,用它可

制作同样风格的一系列页面,或者让每个页面上共享同样的对象。

可象普通页面一样编辑。

母版顶层可以看作是母版的一个特例,简单点说,母版

是处于所有页面下层的,母版顶层恰恰相反,它处于所有其它页

面的最上层,所以我们一般把按钮热区等需要动作的对象放

母版顶层,而不是直接放在母版中。

提示 1:要在你的页面显示母版图像,你必须在页面属性中

背景色栏勾选来自母版页面

2:如果你一定要把按钮等对象直接放在母版中,

需保证它不会被其它页面上的内容所遮盖。

让我们看看示例2中的母版母版顶层分别包含了哪些内

容:

19、图20

本示例中还用到其它一些概念,简要解释一下:

A. 热区

热区是一种看不见的按钮,我们可以在页面任何位置

划分出热区激活我们需要的动作本示例的菜单按钮就是用

热区制作的。

提示:热区可以是矩形,也可以是任意多边形

B.显示与隐藏

通过动作选择或脚本编写,我们可以显示/隐藏页面上包括图

片、文件在内的任意对象。

显示/隐藏MMB制作的一个重要特性,看看本例的菜单

功能我们就知道它能给我们带来什么了。

C. 组合

组合的含义就是将若干对象捆绑到一起,进行操作。

将性质相近或目标一致的对象组合到一起,可以大大便利我们

的工作,便于管理,也便于调用。上例中的菜单条目,就是一个典型

组合

如果删除组合,那么组合中的所有对象将被删除。组合可以

随时取消。

3. 文件内嵌

2

的帮助文本,然而在该方案目录中,我们找不到这个

txt文件,那么,它藏在哪里了呢?

很多时候,出于各种目的的需要(比如限制用户查看或修改)

我们可以把某些文件内嵌到菜单程序中,这是MMB相当不错的一

个功能。

在菜单栏点方案嵌入文件,会跳出如下窗口(图21

我们将需要内嵌的文件添加到这里,确定。

21

嵌入的文件如何调用呢?——很简单,我们使用

这个路径就可以了,比如我们要执行内嵌的文件,在动作

调用时应键入

注意:内嵌方式仅用于嵌入尺寸较小的文件,如果文件较大,

不推荐使用,因为它不但增加程序体积,而且可能导致程序运行缓慢

4. 非标准外形

注意一下示例3的界面,它的四角是圆滑的,这是最简单的一

种非标形状。

示例3

看看我们在方案设置中的设置有什么不同(图22——

22

我们注意到,在轮廓外形栏的图像标签下,带有一条蓝色

线条,它表示本方案已经选用了一个窗口外形图像

本示例选用的窗口外形图像如下图(图23,不错,它就是

一块带圆角的黑板板。

23

提示 1:选用纯黑外形图片的原因,是因为用黑色容易与方案背

景色区分开来,比较容易外形准确。

2MMBB/W遮罩,类似Photoshop的遮罩功

能,用它可以做出透明镂空方案。

5. 相对路径

相对路径是MMB制作中经常要用到的一个参数,除了前面已

经介绍过的MMB常用的相对路径还

有一些:

MMB程序所在驱动器,若我们制作的文件放

D:Source目录,那么就指向D:

本机第一个CDROM驱动器,如:G:

当前Windows系统目录,如:C:Windows

C:Winnt

当前Windows系统System32目录,如:

C:WindowsSystem

提示:在Windows 9x系统中,将指向其System目录,

如:CWindowsSystem

C:Documents and SettingsUserNameLocal SettingsTemp

提示:在Windows 9x系统中,这个临时目录会类似于:

C:WindowsTemp

与前几项不同, 表示MMB打开文件对话框

中的文件(包括路径和文件名,而不仅仅是目录)如我们可用

代表C:

6. PlugIns

与我们感兴趣的某些软件一样,MMB支持插件(Plugins

插件可加强及延伸MMB的设计功能,并制作出更强大易用的程序产

品。

Plugins的插入比较简单,就象插入其它对象一样,但它的调

用却相对笨拙,必须手工编写脚本,而且每调用一次Plugins,都必

须重复设置Pluginset运行Pluginrun及接收参数Pluginget

可选)这三个语句。列一个简单的调用脚本如下:

Copy code

var$ ='Welcome home, Joe'

PluginSet("PlugIn","var$")

PluginRun("PlugIn","UpperCase")

PluginGet("PlugIn","text$")

Message("MMB says:","text$")

不同的Plugins有不同的功能,用法及参数设置也不尽相同,

使用前我们必须先了解这些信息。

篇幅所限在此无法罗列Plugins更详细资料,请大家参考MMB

帮助文档或到相关网站查询(MMB帮助文档的Links中列有一些

非常棒的网站)

提示:MMBPlugins大多出自众多MMB爱好者。

MMB提供的一份Plugins大全贴在文尾,里面包含了相

当有用的一些插件。

7. 其它补充

A克隆复制的区别:

复制不必解释,如同我们用惯了的Ctrl + CCtrl + V

克隆也是一种复制,但它的不同之处就在于:当你改动复

制源时,由它克隆出来的对象会与之同步,比如说,你可以插入一张

图片(A,然后用克隆的方式复制到页面其它几处(BCD

当你不满意这张图片时,或修改这张图片的属性时(缩放、显示/

藏,以及激活动作等等),你只需更改图片(A,其它图片(BC

D)会自动随之更改。

B.图片发送到背景

把页面上任意图片发送到背景将大大减少图像的体积,

这是优化程序速度及精简尺寸的一种好方法。

当图片发送到背景时,你的图片与背景就到了一起,

成为背景的一个局部。因为这个操作是不可逆的(不能再把背景发

送到图像~~~所以除非你确认基本完成方案设计,只待编译程序,

否则,不要轻易发送

C.脚本代码

想用好MMB必须懂得脚本的写作方法,并熟悉掌握一些

常用技巧。

看看下面的示例(样例3国外某高手拿来玩的一个脚本,

没理由不让我们感叹:脚本的功能简直太强大了~

样例3

顺便提示一下:MMB脚本内所涉及目录的目录名中间最好不要有

空格,否则可能执行出错。

下面是手头常用的几个最简单的脚本示例,希望能给从未接触

过脚本的朋友一点启发:

拷贝文字信息到剪贴板:

Copy code

cl$ = '文字信息' Clipboard("SEND","cl$")

显示多行信息:

Copy code

aa$='标题'

bb$='要显示的第一行'

cc$=要显示的第二行

……

zz$='要显示的第Z'

inf$=bb$+CHR(13)+CHR(10)+cc$+CHR(13)+CHR(10)+zz$

Message("aa$","inf$")

除了CHR(13)CHR(10)更多字串的含义,请参阅MMB

助文档。

查看TXT文档:

Copy code

Run("","")

运行注册表文件:

Copy code

Run(""," /S ")

提示:利用Registry Plugins 可让MMB直接读取、修改及

删除注册表值

保存光盘文件到硬盘:

Copy code

fls$=''

dir$='E:SoftwareTools'

rou$=dir$+fls$

BrowseForFolder("选择你文件保存的目录","")

rdr$=CBK_OpenDir

rec$=rdr$+''+fls$

If (rdr$='') Then

Else

FileExist("rec$","FileCheck")

If (FileCheck=1) Then

Message("你已经保存有这个文件","")

Else

SysCommand("copyfile","rou$,rec$")

msg$=''+fls$+'

'+CHR(13)+rdr$

Message("文件复制完毕!","msg$")

End

End

暂时写这么多,建议大家有时间认真学习一下MMB自带的样例

(在帮助文件Articles and TutorialsList of MMB Samples

中可以找到)