我们已经用Delphi 5编写了这个大型应用程序,直到今天仍在进行开发。有关于迁移到更新版本的研究正在进行中,但到目前为止还没有成功,因为一些第三方组件在很长时间内没有更新,并且不适用于更高版本。
与此同时,人们需要继续努力。现在Delphi 5 IDE并不是真正的享受。它非常错误,并且缺乏当代IDE的许多功能,这使得它很难使用。特别是在调试方面。
所以我想知道 - 在此过程中是否可以使用Visual Studio?据我所知,.PDB文件格式非常陈旧,并且有很好的文档记录。是否有可能使Delphi编译器以某种方式为其编译结果生成.PDB文件?然后可以使用Visual Studio调试程序,可能程度远远超过原始IDE。
嗯,绝对的圣杯将把所有的开发都移到VS,只是让编译器远离Delphi,但我想这将是非常不可能的。
答案 0 :(得分:12)
不,任何其他版本的Delphi都没有。但是,您可以使用Map2Dgb将detailed map file转换为dbg文件,并且可以在WinDbg中使用它。
我很好奇您期望在Visual Studio中使用哪些调试功能,这些功能不在Delphi 5中,也不依赖于IDE了解Delphi语言。我对Delphi 5总是很满意。
答案 1 :(得分:5)
顺便说一句,您可以为此功能投票here。
注意,VS-compatitible调试信息不仅对调试应用程序很有用(我同意:最好使用Delphi),但它对于使用Process Explorer等工具很有用。例如,Process Explorer可能能够显示人类可读的调用堆栈,而不是RAW编号。
答案 2 :(得分:5)
我已经尝试tds2pdb了,这对我很有用。
答案 3 :(得分:0)
显然你做不到。似乎PDB毕竟是没有文档的固有Microsoft格式,因此没有其他工具生成它。可怜。 :(
答案 4 :(得分:0)
我建议转到更高版本的Delphi。我们已经为客户提供了各种应用程序。迁移到较新版本的Delphi通常很简单,但是由于组件处理方式的变化(设计时间代码与运行时间分离)以及D2009中对Unicode的更改是一个更大的变化,因此从D5转移到D6的问题
主要的是整理第三方组件。我们只使用源代码附带的第三方组件,因此如果最糟糕的情况发生且供应商消失,我们仍然可以自己处理这些组件。
哪些组件导致问题?