最近,我们将代码从Delphi 2009升级到Delphi XE,并更新了Indy组件(不确定这是否相关)。
但从那时起,我们在Windows Server2003机器上加载和保存XML文件时就出现了错误。
XMLDoc.LoadFromFile()
XMLDoc.SaveToFile()

动态链接库msvcrt.dll在Windows Server2003上(300kb左右)要小得多,而在其他操作系统上则超过600kb。所以它在文件中遗漏了一些东西,并导致了错误...
有人知道怎么解决这个问题吗?或者有没有TXMLDocument的替代方案可以让我试试?
发布于 2012-10-16 04:56:29
默认情况下,在Windows平台上运行时,TXMLDocument/IXMLDocument只是MSXML接口的包装器。TXMLDocument和Indy都不使用_ftol2_sse()函数,甚至都没有链接到msvcrt.dll。你的项目中有其他的错误。
发布于 2012-10-16 19:21:22
msvcrt.dll是Microsoft Visual C++运行时(的一部分)。我认为您有一个较旧(甚至可能更新)的运行时版本,其中不包含此函数。
现在,您必须找出这个函数被调用的位置。您是否将obj文件链接到您的项目或使用(其他)第三方dll?
发布于 2015-12-08 23:32:32
要回答最后一个部分(“有其他选择吗?”),您可能需要查看绝地代码库的TJclSimpleXML类。它不需要任何外部DLL,速度非常快,并且非常容易使用。此外,现在如果你用Delphi编写代码,JCL和JVCL无论如何都是必须的。
我相信http://wiki.delphi-jedi.org/wiki/JEDI_Code_Library是他们的页面。我听说在西雅图你可以通过IDE集成包管理器获得它。
https://stackoverflow.com/questions/12900487
复制相似问题