Windows VB6应用程序不再在Vista计算机上打开

Windows VB6应用程序不再在Vista计算机上打开,windows,vb6,windows-vista,Windows,Vb6,Windows Vista,我有一个VB6应用程序,以前在Vista机器上作为计划任务运行得很好,但它将不再在同一台机器上打开。该应用程序在指定的文件夹中生成导出文件,屏幕上没有直接输出。我没有错误,没有遗漏的参考资料,只是什么都没有 机器运行的是32位Vista Business,使用单个管理员帐户禁用UAC,并关闭自动更新。应用程序驻留在一个不受保护的文件夹中,导出文件放在桌面上的一个文件夹中。客户发誓,自从我安装这个应用程序以来,他们对这台计算机所做的唯一改变就是安装了Norton Antivirus,这在我们的软件

我有一个VB6应用程序,以前在Vista机器上作为计划任务运行得很好,但它将不再在同一台机器上打开。该应用程序在指定的文件夹中生成导出文件,屏幕上没有直接输出。我没有错误,没有遗漏的参考资料,只是什么都没有

机器运行的是32位Vista Business,使用单个管理员帐户禁用UAC,并关闭自动更新。应用程序驻留在一个不受保护的文件夹中,导出文件放在桌面上的一个文件夹中。客户发誓,自从我安装这个应用程序以来,他们对这台计算机所做的唯一改变就是安装了Norton Antivirus,这在我们的软件之前从未造成过问题

除了正常的VB6引用之外,该应用程序还引用了Microsoft脚本运行时(scrrun.dll)和Microsoft DAO 3.6(dao360.dll)。这两个文件以及所有其他VB6依赖项都存在并注册在目标计算机上。我在Sub Main()的开头添加了MsgBox语句,只是为了查看是否有任何东西正在执行,而不是。禁用Norton不会产生任何结果,也不会重新安装VB6运行时以排除任何损坏的库。我从未从我的应用程序中收到任何消息、错误或其他信息

我以前从未遇到过这样的问题,我完全被难住了。还有什么其他原因可能导致这种情况吗

编辑-即使我手动运行该应用程序,它也不会运行,因此关于它是计划任务的部分与我的问题无关,很抱歉将其包括在内


该用户具有完整的管理员凭据,在初始测试中不需要任何兼容性模式,而该测试是在我遇到问题的这台机器上完成的。对于grins,我尝试了XP和2000的兼容模式,但仍然没有

用户是否更改了密码?这将导致计划任务失败,直到他们重新输入任务的密码。

用户是否更改了密码?这将导致计划任务失败,直到他们在任务上重新输入密码。

您是否尝试过直接运行该进程,而不是作为计划任务运行?我远非专家,但可能是因为程序作为任务运行,所以生成的任何错误都没有显示出来。

您是否尝试过直接运行流程,而不是作为计划任务运行?我远非专家,但可能是因为程序作为任务运行,所以生成的任何错误都不会显示。

尝试检查事件查看器消息(如果可以访问)。也许你会在那里发现一些指示牌…

尝试检查事件查看器消息(如果可以访问)。也许你会在那里找到一些指示符号…

你可以试着在一个微软提供的免费独立调试器中运行这个程序。将VB6 EXE编译成带有符号的本机代码(创建PDB文件),您将能够在Windbg中调试应用程序

我猜会发生两件事中的一件

  • Windbg将无法加载EXE。可能会出现一条错误消息,可以识别您的问题
  • Windbg将加载EXE,您可以单步执行以查看发生了什么

下面是一位微软人关于在VB6中使用Windbg的介绍,另一位微软VB人简要介绍了Windbg。

您可以尝试在微软提供的免费独立调试器中运行该程序。将VB6 EXE编译成带有符号的本机代码(创建PDB文件),您将能够在Windbg中调试应用程序

我猜会发生两件事中的一件

  • Windbg将无法加载EXE。可能会出现一条错误消息,可以识别您的问题
  • Windbg将加载EXE,您可以单步执行以查看发生了什么

下面是一位Microsoft人员关于在VB6中使用Windbg的介绍,另一位Microsoft VB人员简要介绍了Windbg。

在可执行文件上设置兼容模式是否会改变任何事情?(此外,对不起,我投票认为这是“与编程无关的”)它以前运行过,但现在它没有按计划运行?听起来像是日程安排问题。当用户双击它时,它会运行吗?如果是的话,这不是程序的问题……我去掉了“软件”标签,因为它有点不具体。Stackoverflow的全部内容都与软件有关。希望你能设法解决这个问题,听起来很糟糕!在可执行文件上设置兼容性模式是否会改变任何事情?(此外,对不起,我投票认为这是“与编程无关的”)它以前运行过,但现在它没有按计划运行?听起来像是日程安排问题。当用户双击它时,它会运行吗?如果是的话,这不是程序的问题……我去掉了“软件”标签,因为它有点不具体。Stackoverflow的全部内容都与软件有关。希望你能设法解决这个问题,听起来很糟糕!没有,他们没有更改密码。问题似乎出在应用程序本身,而不是它的计划任务部分。不,他们没有更改密码。问题似乎出在应用程序本身,而不是它的计划任务部分。是的,我尝试过直接运行流程,但它仍然失败。是的,我尝试过直接运行流程,但它仍然失败。我不想检查事件查看器,感谢您的建议。在检查事件查看器时,我发现我的程序在一个损坏的数据库文件上运行,而这个文件恰好是第一个被访问的文件。修复了数据库文件,它的工作再次漂亮!非常感谢你!解决了这个问题,定义为+1!我没有想到要检查事件查看器,谢谢你的建议。在检查事件查看器时,我发现我的程序正在删除一个损坏的数据库文件,而该文件恰好是第一个被访问的文件。修复了数据库文件,它的工作再次漂亮!非常感谢你!通过def解决了问题,+1