计划任务成功返回错误0xff

我有一个运行batch file计划任务,即使我可以看到成功完成的结果,但根据任务计划程序,它每次都会失败,错误为0xff

我有其他batch file计划也成功完成,并返回0x0,因为他们应该。 我可以看到这些文件之间唯一的区别是工作的结束于:

IF ERRORLEVEL 1 ( ("notify me" script here) ) 

而破碎的结束于:

 IF %2==something ( (run a program here) IF ERRORLEVEL 1 ( (same "notify me" script here) ) ) 

IF块是否返回0xff,如果是假的或什么的? 这是怎么回事?

你正在寻找的语法是:

 IF "%2"=="SOMETHING" ( 

当%2为空时,你的行就变成:

 IF ==SOMETHING ( 

这是无效的语法。 把报价放在它使得:

 IF ""=="SOMETHING" ( 

这是有效的。

经过一番testing,我发现IF块没什么问题,它们似乎没有改变错误级别,但搞乱了“%2 ==”的东西 – 那些失败的时代,没有第二个参数被传递给batch file。 所以我不知道如何“安全地”testing一个参数是否存在(也就是说,当它不存在的时候没有错误出现0xff),除此之外可能还有另一个IF ERRORLEVEL。 但无论如何,我只是改变了计划的任务,所以它总是会有第二个参数(不pipe它是不是“什么”),它现在应该返回0x0。