Windows Service因错误而停止

时间:2018-10-18 09:59:41

标签: c# windows-services

我是C#领域的新手,由于我的一个项目,我需要创建一个Window服务,在这里我必须调用Web服务并执行一些操作并为其创建日志。首先,我创建了一个Windows应用程序并运行该应用程序,并且该应用程序工作了,但是当我尝试在Windows Service(C#)中进行操作时,同样的事情。该服务正在启动,但不再停止抛出错误:

  

服务无法启动。 System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]:对象引用未设置为对象的实例。 (故障详细信息等于ExceptionDetail,可能由IncludeExceptionDetailInFaults = true创建,其值是:System.NullReferenceException:对象引用未设置为对象的实例。在FMIWebService.FMInteractWebService.ConfirmValidConnection(RequestInfo reqInfo,字符串状态,布尔值checkWorkplaceSurveyApp )在FMIWebService.FMInteractWebService.GetData(RequestInfo reqInfo)在SyncInvokeGetData(Object,Object [],Object [])在System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(对象实例,Object []输入,Object []和输出) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&rpc)的System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc&rpc)的System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc。

我的service.cs文件是:

 protected override void OnStart(string[] args)
    {


        //Write Logs
        WriteToFile("Service is started at " + DateTime.Now);

        doWork();

        timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
        timer.Interval = 10000; 
        timer.Enabled = true;
    }

    public void doWork() {

        FMsystemcall obj = new FMsystemcall();
        DataSet tickets = obj.FMAPICall("FM_SP_DOVEVIVO_TICKET_PULL","","FALSE","REQNO");
        for (int i = 0; i < tickets.Tables[0].Columns.Count - 35; i++)
        {
            string reqno = tickets.Tables[0].Rows[i]["REQNO"].ToString();
            DataSet isss = obj.FMAPICall("FM_SP_DOVEVIVO_TICKET_PULL", reqno, "TRUE");
            WriteToFile("IDFM:-" + isss.Tables[0].Rows[0]["IDFM"].ToString());
            WriteToFile("STATUS:-" + isss.Tables[0].Rows[0]["Status"].ToString());
            WriteToFile("MESSAGE:-" + isss.Tables[0].Rows[0]["Message"].ToString());
            WriteToFile("\n");
        }
    }

任何帮助都会得到高度赞赏!

0 个答案:

没有答案