我有这个错误:
E2411包%s中的单位%s是指未找到的单位%s 任何包裹。打包单元必须仅涉及打包单元(Delphi)
Delphi帮助非常有用,它说:
此错误或警告无法提供进一步的信息。
为什么我不能引用不属于软件包的单元?
更新:
永无止境的故事:将文件放在自己的包中会破坏其他内容:Unit GIFImg was compiled with a different version of CCR.Exif.Consts.SOutOfResources 这就是为什么我不想把文件放在自己的包中。
答案 0 :(得分:4)
您不能引用不属于软件包的单元,因为软件包需要是一个独立的软件。这意味着一个包必须包含它使用的所有单元,或者通过其require子句中的包提供它们。
要解决此错误,您可以
答案 1 :(得分:2)
您的问题似乎是
为什么编译器会发出此错误?
如果您参考单元A,则需要解决对单元A的引用。如果在当前包中找不到它,或者在requires子句中找不到另一个包,那么编译器根本无法继续。
你也问:
为什么编译器不能在我的包中包含外部DCU?
您只需在.dpk文件的contains子句中将单元添加到包中即可。