摘要:Authorware是一個(gè)常用的多媒體作品創(chuàng)作工具,Authorware應(yīng)用程序在最后發(fā)布的時(shí)候,一般都需要打包,以脫離其開(kāi)發(fā)平臺(tái)。該文介紹了在Authorware環(huán)境下對(duì)其應(yīng)用程序進(jìn)行打包發(fā)布的方法和注意點(diǎn)。
關(guān)鍵詞:Authorware;多媒體;程序;打包;發(fā)布
中圖分類(lèi)號(hào):TP37 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2013)08-1912-02
無(wú)論使用什么開(kāi)發(fā)工具進(jìn)行程序設(shè)計(jì),最終都要將程序制作成可執(zhí)行的文件進(jìn)行發(fā)布,Authorware也不例外。利用Authorware可以開(kāi)發(fā)出獨(dú)立運(yùn)行的多媒體軟件,這也是Authorware優(yōu)于其他一些多媒體制作工具的原因之一。下面就介紹一下Authorware應(yīng)用程序打包發(fā)行的方法和注意點(diǎn)。
1 程序文件打包前的準(zhǔn)備
一個(gè)完整的應(yīng)用系統(tǒng)應(yīng)該包括可執(zhí)行文件及使可執(zhí)行文件能夠正常運(yùn)行的所有部件。在將應(yīng)用系統(tǒng)遞交到最終用戶(hù)手中之前,必須對(duì)它進(jìn)行嚴(yán)格的測(cè)試。在設(shè)計(jì)期間Authorware程序文件能夠正常運(yùn)行,并不意味著由其打包生成的可執(zhí)行文件同樣能夠正常地運(yùn)行在用戶(hù)的系統(tǒng)中,最常見(jiàn)的問(wèn)題是可執(zhí)行文件運(yùn)行時(shí)找不到外部媒體文件或各種各樣的支持文件,所以在Authorware程序文件打包前要做好一些相應(yīng)的準(zhǔn)備工作。
1.1 確定多媒體數(shù)據(jù)的存放方式
這一問(wèn)題其實(shí)在程序設(shè)計(jì)期間就應(yīng)該得到解決,在這里討論為了突出其重要性。
Authorware可以通過(guò)兩種方式導(dǎo)入圖形、圖像、聲音、數(shù)字化電影等多媒體文件:嵌入方式(也稱(chēng)為內(nèi)部方式)和鏈接方式(也稱(chēng)為外部方式)。如果選擇嵌入方式(這也是Authorware默認(rèn)的選擇),則多媒體數(shù)據(jù)就包含在Authorware程序文件中,程序文件也會(huì)因此而增大;如果選擇鏈接方式,則Authorware程序文件中只包含了多媒體文件的名稱(chēng)和存儲(chǔ)位置等少量信息,而多媒體數(shù)據(jù)則以外部媒體文件形式存在于程序文件外部,在Authorware執(zhí)行到相應(yīng)設(shè)計(jì)圖標(biāo)時(shí),會(huì)根據(jù)導(dǎo)入文件時(shí)記錄下來(lái)的路徑信息自動(dòng)找到并打開(kāi)外部媒體文件。
實(shí)際程序設(shè)計(jì)時(shí),將圖形、圖像、聲音、數(shù)字化電影存儲(chǔ)在程序文件的外部,可以減少可執(zhí)行文件的大小并且便于將來(lái)使用替換的方法對(duì)系統(tǒng)進(jìn)行升級(jí),但是整個(gè)應(yīng)用系統(tǒng)包含的文件數(shù)量會(huì)大大增加。最好只將兩類(lèi)多媒體數(shù)據(jù)存儲(chǔ)在可執(zhí)行文件外部:一是將來(lái)最有可能發(fā)生變化的多媒體數(shù)據(jù),二是程序中反復(fù)使用多次的多媒體數(shù)據(jù)。
當(dāng)程序文件中使用的外部媒體文件數(shù)量較多時(shí),管理就成了一個(gè)大問(wèn)題。Authorware專(zhuān)門(mén)提供了一個(gè)外部媒體文件管理工具來(lái)幫助解決這一問(wèn)題,那就是外部媒體瀏覽器。使用外部媒體瀏覽器可以觀察和控制程序與外部媒體文件的鏈接關(guān)系。
1.2 規(guī)范各種外部媒體文件的位置
如果在Authorware程序中使用了大量的多媒體數(shù)據(jù),會(huì)使程序文件體積過(guò)大,影響播放速度,所以常將這些多媒體數(shù)據(jù)作為外部媒體文件存儲(chǔ),即在程序文件中按鏈接方式導(dǎo)入多媒體數(shù)據(jù)文件。對(duì)于這些文件,不同類(lèi)型一般放在不同的目錄下,以便管理。比如,圖片放在image文件夾中,聲音放在wav文件夾中,視頻放在avi文件夾中等。
1.3 使用搜索路徑
多媒體程序運(yùn)行時(shí),Authorware會(huì)根據(jù)一定的搜索順序去搜索需要的文件。如果在默認(rèn)的路徑和指定的路徑目錄下沒(méi)有找到程序所需的文件,程序就無(wú)法正常運(yùn)行,輕者不顯示某些信息或某種效果,重者會(huì)導(dǎo)致程序結(jié)束運(yùn)行。所以在Authorware應(yīng)用程序打包之前進(jìn)行正確的路徑設(shè)置非常重要。有兩種方法可以完成這一設(shè)置:一是將需要使用的文件放到Authorware默認(rèn)的搜索目錄下;二是在程序中指定Authorware的搜索路徑,然后將需要使用的文件放到該目錄下即可。
1.3.1 Authorware默認(rèn)搜索路徑
當(dāng)某個(gè)Authorware程序運(yùn)行時(shí),需要找到某些外部文件時(shí),Authorware會(huì)在一系列的默認(rèn)路徑中查找這些文件。將需要使用的文件放置到這些文件夾中,Authorware就可以快速找到它們。Authorware默認(rèn)的搜索路徑有:文件第一次被加載時(shí)所在的目錄(如果多媒體程序已經(jīng)打包或者移動(dòng)到其他位置,Authorware將無(wú)法找到該文件,除非在程序中指定文件的位置。);多媒體程序所在的目錄;包含Authorware或Authorware運(yùn)行文件Runa7w32.exe的文件夾,并且有一個(gè)程序處于激活狀態(tài);Windows目錄,通常是“c:\Winnt”;Windows系統(tǒng)目錄,通常是“c:\Winnt\System32”。
Authorware將按照上面給出的順序搜索。只要將需要的外部媒體文件、支持程序文件等放置到以上目錄中的任何一個(gè)中,Authorware都可以找到它們,程序就可以正常運(yùn)行。但為了防止Windows目錄越來(lái)越大,一般不使用Windows目錄和Windows系統(tǒng)目錄作為默認(rèn)路徑。
1.3.2 指定程序搜索的路徑
在Authorware提供的默認(rèn)搜索路徑中,并沒(méi)有非常理想的選擇,所以在大多數(shù)情況下,將外部文件放置到程序默認(rèn)的搜索路徑中并不是最佳選擇,常用的方法是在程序中指定搜索的路徑。在Authorware中指定搜索路徑的常用方法是通過(guò)設(shè)置程序文件的屬性來(lái)實(shí)現(xiàn)。
1.4 帶上支持文件
如果在程序中用到了外部過(guò)渡效果、多種格式多媒體數(shù)據(jù)或外部函數(shù),就需要為它們提供相應(yīng)的支持文件。究竟要帶上哪些支持文件應(yīng)根據(jù)程序中包含的內(nèi)容而定。主要的支持文件有:
1)如果打包生成.a7r文件,則必須提供Runa7w32.exe文件。因?yàn)?a7r文件只能由Runa7w32.exe文件執(zhí)行。
2)為各種格式的圖像、聲音、數(shù)字化電影數(shù)據(jù)提供Xtras支持文件。例如在程序中使用了BMP圖像,就必須提供Bmpview.x32文件。所有的Xtras文件必須安裝在可執(zhí)行文件(或者Runa7w32.exe)所處文件夾下的Xtras文件夾中。
3)為非內(nèi)置的過(guò)渡效果提供Xtras支持文件。在過(guò)渡效果的選擇中,除了內(nèi)置類(lèi)別以外的那些過(guò)渡效果,都是由Xtras提供的??梢詮摹具^(guò)渡效果】對(duì)話框中得知過(guò)渡效果位于哪個(gè)Xtras文件(同一個(gè)Xtras文件往往包含多種過(guò)渡效果),然后將Xtras文件安裝到可執(zhí)行文件(或者Runa7w32.exe)所處文件夾下的Xtras文件夾中。
4)Sprite Xtras需要的支持文件。Sprite Xtras的功能是使Authorware能引入更多類(lèi)型的媒體,例如Flash Xtras使Authorware能引入Flash動(dòng)畫(huà)。如果使用了Sprite Xtras,則必須將相應(yīng)的Xtras文件安裝到可執(zhí)行文件(或者Runa7w32.exe)所處文件夾下的Xtras文件夾中。例如對(duì)于Flash Xtras,必需的支持文件是FlashAst.x32。
5)Scripting Xtras需要支持的文件。Scripting Xtras提供了一些擴(kuò)展Authorware功能的函數(shù),使用方法和系統(tǒng)函數(shù)差不多。如果使用了Scripting Xtras,則必須將相應(yīng)的Xtras文件安裝到可執(zhí)行文件(或者Runa7w32.exe)所處文件夾下的Xtras文件夾中。
6)將外部函數(shù)文件(.DLL,.U32)安裝到可執(zhí)行文件能夠找到的地方。
7)如果系統(tǒng)中應(yīng)用了媒體庫(kù),則應(yīng)將庫(kù)文件存放在程序文件所在的文件夾中。
8)如果系統(tǒng)中使用了非系統(tǒng)(Windows系統(tǒng)本身自帶的字體),則要為用戶(hù)的系統(tǒng)安裝相應(yīng)的字體。
如上所述,如果在程序中使用了各種格式的多媒體數(shù)據(jù)及非內(nèi)置的過(guò)渡效果、Sprite和Scripting等Xtras,就必須將相應(yīng)的Xtras支持文件隨同程序文件一起發(fā)行。除手工查找所需的Xtras支持文件外,還可以使用Authorwae提供的菜單命令,自動(dòng)進(jìn)行查找并加以復(fù)制。
1.5 進(jìn)行程序運(yùn)行界面的設(shè)置
如果應(yīng)用程序在最后運(yùn)行時(shí)不希望展示窗口有標(biāo)題欄和菜單欄的,這也可以通過(guò)設(shè)置程序文件的屬性來(lái)實(shí)現(xiàn)。
Authorware開(kāi)發(fā)的多媒體程序打包之后,其展示窗口尺寸就不可改變了,當(dāng)Windows系統(tǒng)的顯示分辨率大于展示窗口時(shí),展示窗口之外的內(nèi)容就會(huì)和展示內(nèi)容同時(shí)顯示出來(lái),這樣展示窗口以外的內(nèi)容可能會(huì)影響展示窗口的內(nèi)容,這時(shí)可以使用外部函數(shù)將展示窗口以外變?yōu)楹谏?,具體方法為:將外部函數(shù)庫(kù)Cover.u32復(fù)制到應(yīng)用程序所處目錄,在流程線的開(kāi)始和結(jié)束處各放置一個(gè)計(jì)算圖標(biāo),將“cover()”放在啟始計(jì)算圖標(biāo)中,將“uncover()”放在結(jié)束計(jì)算圖標(biāo)中即可。
2 程序文件打包
對(duì)于用Authorware制作的普通的應(yīng)用程序,可使用菜單命令進(jìn)行文件的打包。具體方法為:
1)打開(kāi)需要打包的Authorware應(yīng)用程序文件;
2)執(zhí)行菜單命令【文件】|【發(fā)布】|【打包】,打開(kāi)【打包文件】對(duì)話框,如圖1所示;
圖1 Authorware應(yīng)用程序打包
3)在【打包文件】下拉列表框中選擇打包方式:
Without Runtime:表示打包后文件不形成可執(zhí)行文件.exe,而是.a7r文件,由Runa7w32.exe文件來(lái)執(zhí)行。
For Windows 9x and NT variants:表示打包后形成可執(zhí)行文件.exe,適用于在Windows 9x 和NT等操作系統(tǒng)上直接運(yùn)行。
4)按需要選擇復(fù)選項(xiàng):
【Resolve Broken Links at Runtime】表示運(yùn)行程序時(shí),恢復(fù)斷開(kāi)的鏈接;
【Package All Libraries Internally】表示將所有與當(dāng)前程序有鏈接關(guān)系的庫(kù)文件成為打包文件的一部分,否則庫(kù)文件需要單獨(dú)打包;
【Package External Media Internally】表示將程序中以鏈接方式使用的外部媒體文件和程序文件一起打包,這里的外部文件不包括數(shù)字電影;
【Use Default Names When Packaging】表示打包后的文件與當(dāng)前程序文件同名,不再?gòu)棾鰧?duì)話框讓用戶(hù)指定打包后文件的路徑和名字。
5)執(zhí)行【保存文件并打包】,完成程序打包工作。
總之,通過(guò)對(duì)Authorware應(yīng)用程序進(jìn)行打包,使Authorware應(yīng)用程序能夠脫離其設(shè)計(jì)環(huán)境獨(dú)立運(yùn)行,這是應(yīng)用程序最終用戶(hù)所要求的。同時(shí),打包和發(fā)行Authorware應(yīng)用程序本身就是一件較復(fù)雜的工作,所以將應(yīng)用系統(tǒng)遞交到最終用戶(hù)手中之前必須進(jìn)行嚴(yán)格的測(cè)試,確定最終需要發(fā)行的文件能將它們合理地組織在一起。
參考文獻(xiàn):
[1] 邵劍龍,葉艷青,徐沖,等.Authorware多媒體課件的Web發(fā)布與瀏覽[J].計(jì)算機(jī)應(yīng)用研究,2003(05).
[2] 姜毅.基于Web的協(xié)作學(xué)習(xí)平臺(tái)(Web CL)的設(shè)計(jì)與開(kāi)發(fā)[D].武漢理工大學(xué),2002.
[3] 張淑梅.基于CSCL的CAI系統(tǒng)的開(kāi)發(fā)[D].武漢理工大學(xué),2003.