Delphi brcc32生成损坏的.RES文件

Delphi brcc32生成损坏的.RES文件,delphi,Delphi,我从命令行构建Delphi项目,并使用brcc32.exe构建.res文件 我已经在我的.RC中添加了许多自定义字符串,所以看起来像这样。(有一个小的Delphi5应用程序可以从模板中准备这个.RC) 到目前为止一切都很好,但是BRCC32步骤会生成一个损坏的.res文件,看起来像这样(通过资源生成器查看) 实际上,在build.exe上单击properties/Version会显示垃圾字符,例如BuildTime显示为10:36:59D 有人能提出原因吗?StringTable资源需要以C样式

我从命令行构建Delphi项目,并使用
brcc32.exe
构建
.res
文件

我已经在我的
.RC
中添加了许多自定义字符串,所以看起来像这样。(有一个小的Delphi5应用程序可以从模板中准备这个.RC)

到目前为止一切都很好,但是
BRCC32
步骤会生成一个损坏的
.res
文件,看起来像这样(通过资源生成器查看)

实际上,在build
.exe
上单击properties/Version会显示垃圾字符,例如BuildTime显示为
10:36:59D


有人能提出原因吗?

StringTable资源需要以C样式的null结尾(即使在使用Borland资源编译器时也是如此)

请尝试以下方法:

VALUE "FileDescription","Debug Build\0"
VALUE "FileVersion","999.0.0.339\0"
VALUE "LegalCopyright", "HuwCorp Finance Ltd\0"
VALUE "Revision","339\0"
VALUE "LastChangeRevision","335\0"
VALUE "LastChangeDate","2013-06-07\0"
VALUE "LastChangeTime","13:17:14\0"
VALUE "LastChangeAuthor","foo1234\0"
VALUE "BuildDate","12/06/2013\0"
VALUE "BuildTime","10:36:59\0"

我确信这是相关的,尽管我不能确切地说它的意义是什么,但当我坚持使用“标准”字段时,我可以通过在
CompanyName
field@David:谢谢。当我到达办公室时,我要检查字符串名之后是否需要第一个
\0
。:-)晶圆厂排序。但这仍然很奇怪;我的LegalColyRight是硬编码的,没有“\0”,但它运行得很好。@HughJones可能有一些填充字节恰好是零,你(不)幸运。但是Ken是对的,您确实需要null终止值。#@David我以前确实尝试过,但是通过在字符串中添加#0,没有任何效果。使用转义序列就是答案。谢谢你们两位。
  VALUE "LastChangeDate", "2013-06-074\x08\x01LastChangeTime"
  VALUE "LastChangeTime", "13:17:146\x07\x01LastChangeAuthor"
  VALUE "LastChangeAuthor", "foo1234"
  VALUE "BuildDate", "12/06/2013,\x08\x01BuildTime"
  VALUE "BuildTime", "10:36:59D"
VALUE "FileDescription","Debug Build\0"
VALUE "FileVersion","999.0.0.339\0"
VALUE "LegalCopyright", "HuwCorp Finance Ltd\0"
VALUE "Revision","339\0"
VALUE "LastChangeRevision","335\0"
VALUE "LastChangeDate","2013-06-07\0"
VALUE "LastChangeTime","13:17:14\0"
VALUE "LastChangeAuthor","foo1234\0"
VALUE "BuildDate","12/06/2013\0"
VALUE "BuildTime","10:36:59\0"