【问题标题】:Compiling with Delphi 2009 from a command line under Windows Vista 64-bit在 Windows Vista 64 位下从命令行使用 Delphi 2009 进行编译
【发布时间】:2010-11-03 15:47:26
【问题描述】:

有没有人在不安装 Delphi 2009 的情况下,在 64 位 Windows Vista 下使用命令行 dcc32.exe 编译器成功编译 Win32 GUI 应用程序?在我们的系统上它失败了,并显示 DFM 文件包含未知 16 位资源的消息。这通常表示无法读取 DFM 文件。它在我们尝试过的所有 32 位 Vista 和 Windows XP 上都能完美运行。

我在问,因为我们希望确保以后可以在需要时重建当前的 exe 文件,所以即使我们将来都切换到 64 位操作系统,我们希望能够重建旧的 2009版本。

【问题讨论】:

  • 当 lnkdfm50.dll 不在 bin 目录中时,我在 Delphi 5 中看到了类似的消息。我会先在depends.exe(MSFT Dependency Walker)或其中一个SysInternals工具下运行构建,以检查所有必要的DLLS(甚至是动态加载的DLLS)都在那里。
  • 不安装Delphi?为什么要对自己施加这种限制?
  • 对于 Rob:我们希望确保将来可以编译源代码,即使 Delphi 2009 应该无法在未来的 Windows 版本上自行安装。
  • 添加 lnkdfm120.dll 解决了这个问题,谢谢:-)
  • @Lars:好吧,那么您可能应该添加一个答案来解释如何使其工作并接受它。发现这个问题的有同样问题的人不一定会阅读 cmets。由于 Delphi 运行这种脑死激活方案,因此有时人们可能需要以这种方式运行编译器。

标签: delphi windows-vista delphi-2009 win64


【解决方案1】:

使用 Delphi 2009,您应该使用 msbuild 命令行编译您的项目 (msbuild YourProject.dproj)。请务必从 RAD Studio 命令提示符执行此操作。这确保设置了一些环境变量。这能解决您的问题吗?

【讨论】:

  • 我们不会将 .dproj 文件保存到我们的源代码存储库中,因此这似乎不是一个简单的解决方案。
  • 哇。你开始这样做怎么样?您听起来好像在“像使用 delphi 7 一样使用 delphi 2009”中陷入僵局。我认为这是在 DelphiDeveloper 7.0 上安装服务包以将他升级到 12.0 的失败。 dproj 文件充满了有价值的设置。如果您不打算使用 .dproj 文件来保存这些设置,那么您可能应该继续在 delphi 7 中进行命令行构建。
【解决方案2】:

添加 lnkdfm120.dll 解决了这个问题。

【讨论】:

    【解决方案3】:

    是的,我们在 Vista 64 位和 Windows 2008 64 位中通过 dcc32 和 nant 执行控制台构建。如果您安装到默认位置,您可能需要处理 (X86) 的一些路径问题(我们不会删除这些类型的依赖项)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-16
      • 2022-01-22
      • 2016-11-16
      • 1970-01-01
      • 2010-11-18
      • 1970-01-01
      • 2011-12-13
      • 2011-07-12
      相关资源
      最近更新 更多