计划任务失败 - 未指定错误

时间:2015-10-14 12:47:15

标签: nhibernate sitecore scheduled-tasks sitecore8 umbraco-ucommerce

我有一个c#控制台应用程序,可将数据上传到Sitecore / UCommerce实施。它基于UCommerce UConnector。当我从命令行运行它时,它执行没有问题,所有数据都正确上传和下载,没有错误。当我尝试安排此任务时,它会以0xffffff错误退出。该任务指定一个命令行参数,该参数将应用程序设置为从App.Config

读取所有可配置选项

我已经搜索了这个错误并找到了许多我尝试但没有解决这个问题的建议。我尝试过的事情包括:

  • 输入开始参数
  • 使用最高权限检查运行
  • 将控制台应用程序转换为没有表单的Windows窗体应用程序
  • 使用管理员帐户运行任务
  • 在应用程序完全控制的文件夹上设置安全权限
  • 在系统帐户下运行
  • 尝试在服务器(Windows Server 2012)和Workstation(Windows 7)上运行相同的任务

这些都没有任何区别。事件查看器中没有任何内容。应用程序中的错误记录(SQL)不记录任何内容。

我不知道这是否有任何相关性,但应用程序正在使用NHibernate,Castle Windsor,当然还有UCommerce。

任何人都可以建议我还没有尝试过吗?或者建议我如何找出错误可能是什么。

修改

这是命令行命令

Command Line

更新

(我已删除了路径中的所有空格,以防引起问题,因此下面的命令与上图不同)

我已设法在服务器上更改配置并创建批处理文件。我还更改了应用程序所在的文件夹,因此路径中没有空格。在批处理文件中我有

cmd /c F:\SCProcessor\Orders\SiteConnector.exe /cfg

我在任务计划程序

中有同样的错误

如果我双击批处理文件,它会完美运行。如果我将/c更改为/k(希望在命令窗口中看到错误报告),则不显示任何窗口,并且任务在我结束之前不会停止运行。

1 个答案:

答案 0 :(得分:1)

好的,我已经解决了自己的问题。花了一段时间才发现问题究竟是什么,但最终我通过在SSMS和xp_cmdshell中运行它来找到它。这报告说它找不到配置文件

  

C:\ Windows \ System32下\ APP_CONFIG \预取\ Common.config

app_config是控制台应用程序文件夹中的文件夹。在SiteConnector.exe.config中有许多包含各种配置的包含:

 <sc.include file="App_Config/Prefetch/Common.config"/>

无论出于何种原因(我仍然需要解决原因),这解决了:

  

C:\ Windows \ System32下\ APP_CONFIG \预取\ Common.config

从任务调度程序或SQL作业调用它时,但是:

  

F:\ SCProcessor \订单\ APP_CONFIG \预取\ Common.config

从命令提示符运行时。

我将包含的路径更改为绝对路径,并且问题已修复。只需要将SiteConnector.exe.config更新为

<sc.include file="{$CurrentFolder}/App_Config/Prefetch/Common.config"/>

如果可能的话。