• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當(dāng)前位置:雨林木風(fēng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

        Delphi中巧妙運用RES文件

        Delphi中巧妙運用RES文件

        更新時間:2022-04-26 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

        作者: 蘇涌

        在Delphi項目中,通常有一個與項目名稱主文件名相同的.RES文件,該文件用于保存應(yīng)用程序圖標(biāo)等資源,對應(yīng)于此文件,在項目文件中一定含有編譯指示“{$R *.res}”,告訴編譯器編譯時需要包含與項目主文件名相同的.RES文件。同樣,如果需要在應(yīng)用程序中以資源形式包含任何文件類型,也可以利用.RES文件。本文將告訴你如何利用RES文件在Delphi程序內(nèi)部包含文件。

        一創(chuàng)建.RES文件
        這里以一組音頻文件為例。首先用記事本等任何文本編輯器編寫文件“MyMusic.RC”。文件的格式及內(nèi)容如下:
        SRC1 FILE1 OnlyYou.mp3
        SRC2 FILE2 YesterdayOnceMore.mp3
        SRC3 FILE3 MoonRiver.mp3


        其中,每一行表示聲明一項資源,每一項資源的聲明包含三個參數(shù)定義,第一個參數(shù)是資源的名稱,第二個參數(shù)是資源的類型描述(本例定義了三類),第三個參數(shù)是文件名。參數(shù)之間必須由空格隔開。
        編寫完成“MyMusic.RC”文件后,將其與上述三個.MP3文件放置在同一文件夾中(為了避免由設(shè)置路徑帶來的麻煩)。然后以下面的命令行運行應(yīng)用程序brcc32.exe(位于..\Delphi6\Bin):brcc32 mymusic.rc需要注意的是,該命令只能在命令行方式下執(zhí)行。如果系統(tǒng)的PATH環(huán)境變量中不包含Delphi的運行路徑,那么你還需要將brcc32.exe與MyMusic.RC、三個.MP3文件放置在同一路徑中進(jìn)行。運行上述命令行后,將在同一路徑中得到文件“MyMusic.RES”,這就是一個獨立完整的資源文件,其格式是遵循Windows 標(biāo)準(zhǔn)的,因此可以在諸如VB、VC、CBuilder等多種開發(fā)環(huán)境中使用。

        二在程序中聲明包含.RES文件
        你只需要在項目中的某個單元中(最好是你需要利用這些資源的單元,這樣會使你的應(yīng)用程序更具有可讀性)加入如下編譯指示:
        $R MyMusic.RES}
        {

        盡管該編譯指示可以位于單元的任何位置,但為了使你的源代碼結(jié)構(gòu)合理,最好還是將其并列位于編譯指示“{$R *.dfm}”(每個含有窗體文件的單元中都含有該行編譯指示)。這里的編譯指示就明確告訴編譯器,在編譯應(yīng)用程序時需要將資源文件“MyMusic.RES”包含到應(yīng)用程序中。

        三在運行時獲取資源
        上述兩步工作僅僅是基礎(chǔ)(但一定是必要的),利用資源才是根本目的。下面的過程將告訴你如何將應(yīng)用程序中包含的資源(文件)重新還原。
        procedure MusicResToFile(const ResName, ResType,FileName: string);
        var
        Res: TResourceStream;
        begin
        Res := TResourceStream.Create(HInstance,ResName, PChar(ResType));
        Res.SaveToFile(FileName); //將資源保存為文件,即還原文件
        //你還可以進(jìn)行其它的流操作,在內(nèi)存中實現(xiàn)對資源利用而不必另存為文件
        Res.Free;
        end;


        調(diào)用該過程的示例如:
        MusicResToFile('SRC2', 'FILE2', 'TheSecondMusic.MP3');

        值得一提的是,利用此方法,你完全可以制作自己的安裝程序,該安裝程序僅包含一個可執(zhí)行文件,在該可執(zhí)行文件中以資源的形式包含所有將要安裝的內(nèi)容(文件)。此外,如果在你的應(yīng)用程序中需要播放外部音頻文件(如背景音樂、聲音提示等),也可通過此方法將這些外部文件包含到應(yīng)用程序中,從而避免用戶誤刪這些音頻文件導(dǎo)致應(yīng)用程序的不完整。

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統(tǒng)下載排行

        主站蜘蛛池模板: 亚洲成a人一区二区三区| 成人免费视频一区| 青青草原亚洲视频| 香蕉国产在线观看免费| 四虎AV永久在线精品免费观看| 无码天堂亚洲国产AV| 免费永久在线观看黄网站| 国产AV日韩A∨亚洲AV电影 | 一级美国片免费看| 亚洲国产精品日韩| 成人无码视频97免费| 久久99国产亚洲高清观看首页| 免费一级毛片无毒不卡| 亚洲狠狠综合久久| 在线看免费观看AV深夜影院| 成人亚洲国产va天堂| 免费人妻av无码专区| 你是我的城池营垒免费看| 精品日韩亚洲AV无码一区二区三区| 91频在线观看免费大全| 亚洲精品成a人在线观看夫| 高清在线亚洲精品国产二区| 中国在线观看免费的www| 亚洲福利视频一区二区三区| 成全视频免费高清| 七次郎成人免费线路视频| 久久99亚洲网美利坚合众国| 毛片免费在线观看网址| 特级无码毛片免费视频| 国产亚洲成av片在线观看| 波多野结衣中文字幕免费视频| 朝桐光亚洲专区在线中文字幕| 国产日产亚洲系列| 在线观看特色大片免费视频| 免费观看又污又黄在线观看| 亚洲国产综合专区电影在线 | 又粗又大又猛又爽免费视频| 97人妻精品全国免费视频| 亚洲免费一级视频| 久久夜色精品国产亚洲av | 中文字幕久精品免费视频|