Delphi XE8和致命错误F2039

Set*_*Net 5 delphi delphi-xe8

随着XE8更新1,Win 7 64位和单个组件添加到一个空的文件夹我得到:错误:[dcc32致命错误] F2039无法创建输出文件.\ Win32\Debug\MountTest.

测试将在第一次编译并运行正常,但XE8必须关闭并重新启动才能再次编译.该组件是Mitov Software的仪表.组件供应商说这是一个已知的bug,没有修复.如果是这样,它的一个showstopper和项目结束对我来说.这真的是Delphi的终结吗?

我希望有人能以某种方式将这只兔子拉出帽子.

这就是我为隔离问题所做的工作.

  1. 启动失败的应用程序(不会编译2ed时间)
  2. 删除所有使用的外部装置
  3. 删除对这些单位的引用
  4. 删除"使用"子句中的所有引用
  5. 评论代码,直到它编译

它应该在每次运行时编译(没问题).现在向项目添加一个空白表单.只要添加它就不要对表单做任何事情.将其添加到您的uses子句中.

它应该在每次点击Run时编译.现在打开空白表单并简单地触摸它以便需要重新编译.

当您运行应用程序时,它会在您第二次运行它时失败.

请注意,只需添加表单并"触摸"即可.无需代码.

这个问题对我的代码没有问题 - 它不可能.它是UI中的一个错误 - 必须是.

Ken*_*ite 7

巧合的是,我昨天刚刚与这个问题进行了斗争,测试了我移植到XE8的一些组件.我的输出文件是项目可执行文件.

在花了几个小时试图弄清楚发生了什么(包括重新配置我的AV软件,完全禁用它,将项目移动到不同的位置等)后,我能够通过禁用Castalia来解决问题.如果我在没有Castalia的情况下运行IDE,则不会出现问题.如果我再次启用Castalia,它会再次开始发生.

您可以在XE8中找到禁用/启用Castalia的说明如何禁用Castalia?

我正在删除上述内容,因为问题再次出现(禁用Castalia).进一步调查显示了几件事:

  1. 问题似乎与调试器中引发的任何异常有关(即使是在代码中处理的异常).在调试器例外对话框中单击" 中断"或" 继续 "将一如既往地工作.但是,下一次编译或构建应用程序的尝试因F2039错误而失败.在Windows资源管理器中删除可执行文件允许编译和运行一次,然后错误再次出现.

  2. 重新启动IDE可以解决问题,直到发生下一个调试器异常.

  3. 无论是taskkill还是带有del的批处理文件都没有在构建前或构建后的事件中工作.

  4. 在Embarcadero 有一个开放的QC条目,表明它是在XE7,XE7.1和XE8中报告的,目前是一个开放的内部票据.我无法找到一种方法将上面两点中的信息添加到基于JIRA的新质量门户中的开放票证中.也许有权访问并且可以这样做的人将代表我(或至少添加此帖子的链接).

  5. 它与特定项目无关.原始答案(如上所述)与测试应用程序相关,同时从早期版本将一些组件移植到XE8.当问题再次出现在我身上时,它是一个全新的项目,完全不相关,不使用任何非标准组件.

(我以前可以访问EMBT QC,并且有一些打开的门票.这些帐户似乎没有迁移到新的QP,我找不到我账户下的任何门票.)