我们有一个传统的VB6应用程序,这对我们的业务至关重要。我们正在努力用.NET重写它,但这需要很长时间。
在过去几年中,这个旧的VB6应用程序遇到了我们大约10年前购买的第三方控件的问题,当时我们编写了VB6应用程序。这些问题越来越严重。例如,应用程序将突然崩溃。当它发生时,我将检查用户的事件日志以查看发生了什么,并且几乎所有情况下,其中一个第三方控件失败,并将应用程序关闭。有时这会导致用户丢失数据。
我们已经尽了最大努力来缓解这个问题并且这有很大帮助,但是无法阻止所有这些失败的情况。几年前,当这个问题首次出现时,我对这些崩溃发生的原因进行了一些调查,我记得有些人说这些问题是由我们申请的服务包引起的。我们的VB6应用程序目前处于Service Pack 5中。我了解到微软已经推出了针对VB6的Service Pack 6,并且当时询问了这一点,并且由于与我们的不兼容问题,人们建议我不要升级到SP6 for VB6第三方控制,所以我们只留下了一些东西。
然而,现在这些崩溃更频繁发生。我们想到的可能是问题是Windows最近的一些更新可能已经将VB6移到了SP6。或者,也许我多年前给出的关于将我们的应用程序保留在SP5 for VB6的建议是错误的。在任何情况下,我们需要找出是否可以将我们的应用程序移动到SP6 for VB6 ,从而希望减少(如果不能消除)这些旧的第三方控件给我们的致命崩溃的数量。
以下是我们的应用程序当前使用的第三方控件列表。有谁知道这些控件是否适用于VB6 SP6?
答案 0 :(得分:2)
我在VB6 SP6上使用了WSpell。 Crystal始终与微软紧密合作,所以我希望那些有用。 Sheridan,好吧,我无法帮助你。
那说......为什么要问?试试吧。如果它不起作用你总是可以回滚,对吗?
答案 1 :(得分:0)
我无法提供有关Sheridan控件的任何建议,但我们使用Crystal ActiveX Report Viewer和Runtime Library 10.0与我们的VB6应用程序(使用SP6),这没有崩溃问题。
答案 2 :(得分:0)
我们有多个使用Sheridan Data Widgets 3.1的VB6应用程序,主要是网格,但这些天也有点下拉。在Vista和7上一切都运行良好,但是一旦有几个人升级到10(我们忽略/避免8)问题很快就出现了。
加载网格开始使应用程序崩溃,但这很奇怪。我可以在最初显示信息时调用加载函数(它填充网格),这很好。其他功能会更改数据并重新加载网格,大多数功能除了一个之外。没有什么特别的或不同的,但网格特别不喜欢它。令人讨厌的是,如果我在每次将一行添加到网格之前扔进一个MsgBox(我们使用AddItem模式),那么愚蠢的事情就不会崩溃。
有一次与网格类似的问题,发现我不得不将焦点转移到一个出现不到一秒钟的新表格。可能与网格如何绘制有关?或者通过导致它在没有其他人做的时候崩溃的功能判断,也许某些事件序列会导致崩溃。
查看Win10上的事件日志,它告诉我故障模块名称是USER32.dll,异常代码在0xc0000005和0xc000041d之间交替。