我开发了一个使用第三方组件的应用程序(在D7,WinXP上开发).当我在XP上部署这个应用程序时,一切正常.当我在Vista上运行它时,应用程序停止正常工作:
当我打开/关闭可见性时,工具栏上的工具按钮的大小不一致,这就是为什么(第三方)皮肤没有正确嵌套然后看起来很难看.它很烦人,这很烦人,但下一点并不致命.
第三方文本处理组件停止写入.我写了一些例程,允许在某些情况下写这个组件.发现,我无法写任何东西(可能这些例程在写作时返回false,但我没有看到任何理由,为什么在XP上应该可以正常工作,但在Vista上没有),这是一个很大的冲击.
该应用程序运行(最后),但不是在路上,就像它应该!!!!
我想调试它,但是怎么样?
注意:当我在Win98上运行相同的应用程序时,我收到有关无效浮点运算的错误消息...
有人解决了这个问题吗?
谢谢
如果Delphi 7与Windows Vista兼容,它实际上只表示以下一个或两个:
它并不自动意味着
让我给你一个类比:你可以用锤子把钉钉在墙上而不伤害自己并不意味着无论你做什么,你都不会伤到自己.
如果您的程序(在您自己的代码中,或作为您使用的第三方组件的一部分),使用已更改或甚至可能已删除的Windows部分(虽然这远远少于),那么您需要修复您的程序,没有绕过它.
也没有银弹,所以没有编译器指令或诸如此类的东西.我能想到的最多的是,Windows Vista可能有一些兼容性设置,可以在Vista中打开某些XP兼容层来修复您遇到的特定问题.
但是,唯一的长期解决方案是更改程序,使其与Windows Vista以及Windows 7正确兼容.
既然您说您正在使用第三方组件,那么您是否已验证您使用的特定版本是否与Vista兼容?您需要检查作者的网站才能找到它.也许只需升级这些组件即可解决.
但是,您可能还需要对自己的代码进行更改.
前进的最佳方法是安装Vista和可能的Windows 7并开始调试以尝试找出问题的根本原因.
请注意,只在Vista上安装Delphi 7并重新编译不会修复任何问题.如果在特定的Windows版本上编译它,编译器不会生成不同的程序.只有对代码的更改才会应用必要的更改.