我有一个最初加载的VB6应用程序(仅在第一次输入许可证密钥的小提示时)。它在我的机器上工作正常(Windows 7)。
我抱怨它崩溃在别人的机器上(xp和7),所以我制作了一台Windows XP虚拟机。我把它安装在虚拟机上,它崩溃了。我想看看它崩溃的地方,所以我在虚拟机上安装了Visual Studio,以便得到调试提示。当我再次运行程序时,它有效。
我对C ++比较熟悉并遇到过这类问题,所以我认为这是某种运行时问题。
我发现了这个VB6 SP6 Redistributable Runtime:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24417
我安装了它,它仍然无法运行。
任何想法从哪里开始?
编辑:
我试过了depends.exe,它只显示了MSJava,我听说我可以忽略它。 depends.exe是否还显示了所需的.ocx(Active X控制器?)等内容?
此外,在cmd提示符下,似乎没有填充%errorlevel%。这是一个VB6的东西,还是这表明这确实是崩溃而不是用户退出?
答案 0 :(得分:1)
打开Visual Basic项目并检查“项目”菜单下的“参考”和“组件”。
由于它在安装VB运行时崩溃,因此很可能是您在项目中引用的组件,该组件在被测客户端上不存在(或未注册)。
这应该是一个简单的解决方法。
答案 1 :(得分:1)
我在Windows 7计算机上遇到了同样的问题。 我卸载了所有内容,将我的Windows主题更改为Windows Classic。
我更改了VB安装文件的以下属性。 右键单击setup.exe并转到属性,然后在兼容性选项卡中将兼容模式更改为Windows XP SP2。在设置中取消选中以下复选框。
已完成安装。
然后从此处安装VB 6 Service Pack 6。 http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=24417
希望它有所帮助。
答案 2 :(得分:0)
它可能需要除了运行时以外的其他东西,您是否尝试在它崩溃的机器上使用依赖性walker http://www.dependencywalker.com/查看它?
应该快速指出任何缺失的参考文献。
答案 3 :(得分:0)
也许再试一次,创建一个新的VM,但安装远程调试器而不是完整的VS.
答案 4 :(得分:0)
您应该为您的应用程序创建一个安装程序。可能存在比VB6运行时更多的依赖项。一个好的安装工具将为您检测至少一些必要的依赖项。请查看this question或this question