zoukankan      html  css  js  c++  java
  • delphi 将Dll等生成资源文件

    资源文件一般为扩展名为res的文件,其自带的资源编译工具BRCC32.EXE(位于/Delphi/BIN目录下)

    1.编写rc脚本文本
    用记事本或其它文本编辑器编写一个扩展名为rc的文件,格式分别为在资源文件中的名称->类型->实际文件名称。

    例如:要将文件名 demo.Dll的文件打包成一个资源文件,首先 新建一个文本文档,输入内容
    mydemoDll RCDATA demo.DLL

    mydemoDll 和 RCDATA 你可以随便写,这个是为了在使用资源时定义的名称和类型你也可以写成:a b demo.DLL
    将文本保存,保存后将文本的后缀(.txt)改成(.rc)


    2.将rc文件编译成res资源文件
    将脚本文件和实际文件拷到Brcc32.EXE所在目录,执行DOS命令。格式为:Brcc32 脚本文件(回车),
    例如:
    将上面的Mydll.rc和demo.Dll拷到Brcc32.EXE所在目录,执行 Brcc32 Mydll.rc(回车)即可。如果编译成功,则会生成一个Mydll.res的文件,这个文件就是我们需要的资源文件。
    3.在Delphi单元中加入资源文件
    将生成的res资源文件拷贝到你所编程序的路径下,在单元文件{$R *DFM}后加上一句{$R Mydll.res},则将res文件加入去,编译后资 源文件即已包含在可执行文件中了。若你有多个资源文件,也按上法依次加入。/
    4.在Delphi程序中调用资源文件(也可以在EXE中运行资源文件,如在EXE中直接运行另外一个EXE,或者调用DLL等,篇幅原因就不写了)

    //D7下编辑

    unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls;

    type
    TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.dfm}
    {$R mydll.RES}
    //释放资源文件到指定文件夹,参数1:资源名称 参数2 资源类型,参数3:存放目录
    function ExtractRes(ResName,ResType, ResNewName: string): boolean;
    var
    Res: TResourceStream;
    begin
    try
    Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType));
    try
    Res.SavetoFile(ResNewName);
    Result := true;
    finally
    Res.Free;
    end;
    except
    Result := false;
    end;
    end;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    ExtractRes('mydemoDll','RCDATA','d:/aaa.dll');
    end;

    0

  • 相关阅读:
    python之切片
    python之递归函数
    python之函数的参数
    python之定义函数
    python函数之调用函数
    小地图
    利用脚本对游戏对象进行操作
    Unity中www的基本应用
    U3D脚本开发基础
    U3D游戏开发基础
  • 原文地址:https://www.cnblogs.com/blogpro/p/11453834.html
Copyright © 2011-2022 走看看