晚上好,我是C#编程中的新手,你甚至都不能叫我菜鸟。
我试图找到我的方式,遗憾的是,除了互联网和堆栈溢出(感谢堆栈溢出)之外,我没有其他的教育途径。
问题是:我想在这里启动和停止在C#中使用Net4.0的服务。
我添加了一个对System.ServiceProcess的引用,在程序的顶部设置如下
using System;
using System.ServiceProcess;
using System.ComponentModel;
using System.Configuration;
using System.IO;
using System.Runtime.InteropServices;
using System.Windows.Forms;现在,我有了以下功能:
// Below is the service start and stop code
public void ServiceStart(string SVName)
{
ServiceController service = new ServiceController(SVName);
service.Start();
service.WaitForStatus(ServiceControllerStatus.Running);
}
public void ServiceStop(string SVName)
{
ServiceController service = new ServiceController(SVName);
service.Stop();
service.WaitForStatus(ServiceControllerStatus.Running);
}
// End of Service Restart Code我遇到的问题是,这个函数给了我4个错误,两个错误重复了“停止”函数。
'FM_MW.ServiceController‘不包含'Start’的定义,也找不到接受'FM_MW.ServiceController‘类型的第一个参数的可访问扩展方法>'Start’(您是遗漏了>使用指令还是程序集引用?)
和
FM_MW.ServiceController‘不包含“WaitForStatus”的定义,并且无法找到接受'FM_MW.ServiceController’类型的第一个参数的可访问扩展>方法'WaitForStatus‘(>您缺少使用指令或程序集引用吗?)
这两个错误对停止函数也是重复的。请帮助我,我真的不知道了,我在这个问题面前坐了4个小时,现在我基本上什么都不知道,我所做的就是通过文档和堆栈溢出来学习。
补充:哦,对不起,我应该多解释一下我的节目。
程序需要停止服务,然后更新文件,然后检查文件,更新数据库,然后重新启动停止的服务。
我需要这些函数来停止服务,以便我可以更新文件。
发布于 2020-05-06 17:39:10
经过长时间的搜索,我自己发现了这个问题。
似乎我在代码中的某个地方创建了一个带有自动修复的函数。
serviceController试图访问该代码。而不是系统。
意味着我
Form_ServiceController作为我自己的函数
而不是
System.ServiceProcess.ServiceController
这就是在我删除了我的流氓代码片段之后的问题--一切都按照我的预期工作。
!!
https://stackoverflow.com/questions/61639328
复制相似问题