我得到了一个非常类似的错误:
如何解决这个delphi 7编译错误 - "重复资源"
但是,我得到的错误是这样的:
[Error] WARNING. Duplicate resource(s): [Error] Type 10 (RCDATA), ID TFMMAINTQUOTE: [Error] File P:\[PATH SNIPPED]\Manufacturing.RES resource kept; file FMaintQuote.DFM resource discarded.
Manufacturing.res是默认资源文件(应用程序称为Manufacturing.exe),FMainQuote是其中一种形式..dfm文件是纯文本文件,所以我不确定哪些资源是重复的,如何找到并修复它?
如果我再次尝试编译项目,它可以正常工作,但exe的图标与我在"项目选项"中使用"加载图标"按钮设置的图标不同.应用程序上的图标是某种我无法识别的铃声图像.
尝试寻找额外的{$ R*.res}或{$ R*.dfm},您可能已从某处复制过它.
Delphi将所有DFM文件转换为资源,并将它们命名为类的名称.您可以使用资源编辑器并打开任何基于表单的Delphi应用程序来验证这一点.
搜索所有单位以查找TFMMAINTQUOTE表单的实例.它最有可能是两个单元,其中一个没有链接到你的项目,但是通过引用错误单元的uses子句被拉入(错误,因为它以不同的名称保存但具有相同的表单名称,如果它是您项目的一部分,然后编译器会在您首先添加单元时抱怨).
这个问题的简单解决方案是在项目中找到TFMMAINTQUOTE表单并将表单重命名为其他表单,但旧的TFMMAINTQUOTE仍将被拉入.
我建议使用一个好的目录grep工具,例如GExperts中的工具来进行搜索.它可以节省很多时间,如果需要,可以设置为搜索整个硬盘.GExperts的优势在于它可以免费直接集成到Delphi IDE中.