程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi學習使用資源文件 - DLL 中的資源文件

Delphi學習使用資源文件 - DLL 中的資源文件

編輯:Delphi

本例將把一張 bmp 圖片, 以資源文件的方式嵌入 dll, 然後再調用.

  第一步: 建一個 DLL 工程, 如圖:

Delphi學習使用資源文件 - DLL 中的資源文件

  然後保存, 我這裡使用的名稱都是默認的.

  第二步: 建一個資源原文件, 如圖:

Delphi學習使用資源文件 - DLL 中的資源文件

  編輯內容如下(路徑中的文件一定要存在):

  img1 BITMAP "c:\temp\test.bmp"

  然後, 取個名(後綴須是 rc, 我這裡取名為 Res.rc), 保存在工程目錄下.

  第三步: 在 DLL 工程中添加這個資源原文件, 如圖:

Delphi學習使用資源文件 - DLL 中的資源文件

  此時, 工程源文件中會添加一句: {$R 'Res.res' 'Res.rc'}, 我們需要的源文件這樣即可: library Project1; {$R 'Res.res' 'Res.rc'} begin end. 然後 Ctrl+F9 編譯; 此時在工程目錄下會生成我們需要的 Project1.dll.

  第四步: 把剛才的 Project1.dll 文件復制到 c:\temp 下.

  這樣過會我們可以通過 c:\temp\Project1.dll 找到這個文件. 至此 DLL 制作完畢.

  第五步: 重新建一個 VCL Forms Application 工程, 代碼如下:

unit Unit1; 
 
interface 
 
uses 
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
 Dialogs; 
 
type 
 TForm1 = class(TForm) 
  procedure FormPaint(Sender: TObject); 
 end; 
 
var 
 Form1: TForm1; 
 
implementation 
 
{$R *.dfm} 
 
procedure TForm1.FormPaint(Sender: TObject); 
var 
 h: THandle; 
 bit: TBitmap; 
begin 
 h := LoadLibrary('c:\temp\Project1.dll'); {載入 DLL} 
 
 bit := TBitmap.Create; 
 bit.LoadFromResourceName(h, 'img1');   {提取資源} 
 
 Canvas.Draw(10, 10, bit);         {在窗體上繪制圖片} 
 
 FreeLibrary(h);              {載卸 DLL} 
 bit.Free; 
end; 
 
end. 
 
 
//效果圖: 

Delphi學習使用資源文件 - DLL 中的資源文件


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved