Windows 7 上 Delphi 6 中的“特定于平台”警告
Posted
技术标签:
【中文标题】Windows 7 上 Delphi 6 中的“特定于平台”警告【英文标题】:"specific to a platform" warning in Delphi 6 on Windows 7 【发布时间】:2011-04-22 00:23:44 【问题描述】:我们有一些在 Delphi 6 中编译的遗留代码。有计划在更新的 IDE 中重写它,但它们是一条出路。
当我们编译它时,我们会收到几个这样的警告:
FPrecision 特定于平台。
这是在 VCL\DB.pas 中。 (不是我们的文件。)FPrecision 是这样定义的:
FPrecision 整数平台
我知道为什么它是特定于平台的,但我真的不知道该怎么做。
这只是在我们迁移到 Windows 7 进行开发时才开始发生的。
我看到了this question,但该解决方案对我不起作用。我无法将预编译器标签添加到 DB.pas 并且项目文件没有任何选项(我可以看到)来抑制这个警告。
我唯一的选择是关闭所有警告还是接受它?
【问题讨论】:
你不能关闭特定的警告吗? IIRC 在某处有一个复选框列表。 @Henk Holterman - 如果你能指出我的列表(遗憾的是在 Delphi 6 中),那么这就是答案。 太久以前了。但是忽略它是非常安全的,Delphi 6 是 CLX 实验,这只是意味着“不在 Linux 上”。我很确定有一个设置。编译器/构建设置上的第二个选项卡可能。特定于 Prob 项目。 查看这个问题的答案***.com/questions/870862/… 【参考方案1】:如果你只为特定平台开发打开项目源(Project > View source)并添加
$WARN SYMBOL_PLATFORM OFF
【讨论】:
还有 $WARN UNIT_PLATFORM OFF 可以用来消除警告,例如在使用 FileCtrl 单元时。【参考方案2】:您可以放心地忽略平台警告。 Delphi 6 和 7 是在当时开发的,当时 Borland 正在试验 Kylix 以提供一种编写跨平台 Delphi 程序的方法。标记为平台的项目是平台相关的,通常(但不限于)涉及文件访问例程和常量。 Kylix 项目失败,不再支持,所以即使你想,也没有办法将代码编译到除 win32 之外的平台上。我不完全确定,但据我记得,在更高版本的 IDE 中不再有平台警告(如果我错了,请纠正我)。
最好的问候——Spook。
【讨论】:
你错了。它们仍然存在,但项目文件默认关闭平台警告。如果/当 Embarcadero 推出 Mac 开发时,这些警告可能会再次发挥重要作用。 好吧,实际上,如果默认情况下禁用它们,那几乎就像根本没有警告一样 :) 根据过去的 Borland/CodeGear/Embarcadero 策略,我会投票选择“如果”而不是关于“何时”。好吧,底线是,如果您不打算在 win32 世界之外开发应用程序,您可以放心地忽略所有平台警告。最好的问候——Spook。 现在(Delphi XE7)它们再次有效。以上是关于Windows 7 上 Delphi 6 中的“特定于平台”警告的主要内容,如果未能解决你的问题,请参考以下文章