C# 仅在方法完成后启动windows服务
我是c#的初学者,需要帮助解决以下问题。 在我的程序中,我想启动一个服务,但只有在a方法完成之后。比如说,C# 仅在方法完成后启动windows服务,c#,methods,service,C#,Methods,Service,我是c#的初学者,需要帮助解决以下问题。 在我的程序中,我想启动一个服务,但只有在a方法完成之后。比如说, { // A method which copies file A(); // A service that uses the copied files in function A() ServiceController service = new ServiceController("ServiceName");
{
// A method which copies file
A();
// A service that uses the copied files in function A()
ServiceController service = new ServiceController("ServiceName");
service.Start();
}
问题是服务已经启动,但方法A()尚未完成复制。
欢迎任何意见或帮助 你可以在课堂上做
您可以使用ServiceController类连接并控制
现有服务的行为。当您创建
ServiceController类,您可以设置其属性,以便它与
特定的Windows服务。然后可以使用该类启动、停止,
或者操纵服务
几条建议
你有没有试过用谷歌搜索如何用c语言启动服务?正如他所说的,他是c语言的初学者。一开始,如果你之前没有使用C#的经验,谷歌的结果可能会让人很困惑。虽然我不得不承认,一个初学者从一个服务开始是我在originalposter没有见过的(我发现服务调试起来比普通c#程序更困难),你能解释一下为什么服务本身不检查文件的存在,并在必要时复制它吗?(正如您所写的程序应如何运行一样,每次启动服务时,都会复制文件,然后启动服务,而不是在必要时仅复制文件[这可能是服务运行时的任何时间,因为服务通常不会只运行一次]@Thomas是初学者并不意味着你不能使用Google谢谢你的评论。启动服务a服务不是问题。但是如何让它等到方法完成工作。谢谢,问题是服务已经启动,但功能a()尚未完成复制。谢谢,我可能会在方法A()中调用它。
private void SomeMethod()
{
A();
ServiceController controller = new ServiceController("WindowsServiceName");
controller.Start();
}