我有一个简单的vb.net应用程序。当我转到bin\debug\program.exe并双击该程序时,程序运行得很完美。但是,使用任务计划程序运行相同的程序时,它将无法执行。当我创建一个计划任务并单击“运行”时,它只会弹出一个控制台窗口一秒钟,然后关闭。此外,这个相同的程序曾经可以通过任务计划程序运行。有一天,它就突然停止工作了。
附:PS: 我在svn中管理这个程序代码,所以我可以放心地说代码没有改变。
附:PS: 我在svn中管理这个程序代码,所以我可以放心地说代码没有改变。
0xe0434f4d退出代码具有相当重要的意义。 这是托管异常的本机异常代码。 换句话说,当您的应用程序由任务管理器运行时,它会崩溃并出现未处理的异常。 我可以猜测可能的原因,但这毫无意义。 请自己找出问题,编写AppDomain.CurrentDomain.UnhandledException的事件处理程序,并记录e.ExceptionObject.ToString()的值。 这将为您提供异常消息和堆栈跟踪,几乎总能帮助您找出出现问题的原因。
个人而言,我不相信魔法 :-)
实际上,这个问题是由于权限引起的。作为一个计划任务,该作业没有权限访问某些文件夹和文件。
我会检查一下预定任务正在哪个用户下运行。也许它是在一个密码已过期的帐户下运行(正如您所说,它以前一直在运行),需要更改此密码。
我注意到在Windows 2000和Windows XP上,某些定时任务每次重启机器后,我们都必须重新输入密码,而其他一些任务则可以在没有密码的情况下继续工作,我从未找出其中的区别。