首页 > 解决方案 > 将字体作为资源文件添加到 Delphi 项目后编译出错

问题描述

我正在使用 Delphi Rio,我想通过将字体嵌入到应用程序可执行文件中来分发它。但是在编译应用程序时,我遇到了错误,如下所示。

我只是使用对话框添加了一个字体Project->Resources and Images,根本没有做任何其他事情。

图片

请指导如何修复错误。

项目1资源.rc:

1 FONT "Kanit-Black.ttf"

项目1.dpr:

program Project1;

{$R *.dres}

uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

编译器输出:

构建开始于 07/18/2020 01:14:16 AM。
__________________________________________________
项目“C:\Users\John\Desktop\foo\Project1.dproj”(构建目标):
目标 BuildVersionResource:
    c:\program files (x86)\embarcadero\studio\20.0\bin\cgrc.exe -c65001 Project1.vrc -foProject1.res
    CodeGear 资源编译器/绑定器
    版本 1.2.2 版权所有 (c) 2008-2012 Embarcadero Technologies Inc.
    
    Microsoft (R) Windows (R) 资源编译器版本 6.0.5724.0
    
    版权所有 (C) 微软公司。版权所有。
    
    
    删除文件“Project1.vrc”。
    删除文件“Project1.$manifest”。
目标 BuildProjectResourceFile:
    c:\program files (x86)\embarcadero\studio\20.0\bin\cgrc.exe -c65001 Project1Resource.rc -foProject1.dres
    CodeGear 资源编译器/绑定器
    版本 1.2.2 版权所有 (c) 2008-2012 Embarcadero Technologies Inc.
    
    Microsoft (R) Windows (R) 资源编译器版本 6.0.5724.0
    
    版权所有 (C) 微软公司。版权所有。
    
    
    
    RC:致命错误 RW1023:在文件中寻找 I/O 错误
    c:\program files (x86)\embarcadero\studio\20.0\bin\CodeGear.Common.Targets(1004,5): error MSB6006: "brcc32" exited with code 1.
在项目“Project1.dproj”中完成构建目标“BuildProjectResourceFile”——失败。
完成构建项目“Project1.dproj”——失败。
构建失败。
c:\program files (x86)\embarcadero\studio\20.0\bin\CodeGear.Common.Targets(1004,5): error MSB6006: "brcc32" exited with code 1.
    0 个警告
    1 个错误
经过时间 00:00:00.18

标签: delphidelphi-10.3-rio

解决方案


推荐阅读