我有我使用C#ServiceBase类建立了一个服务。 它的工作原理,当我在Windows 7和Windows Server 2008上运行它; 但是,它不能在Windows XP中运行。
我创建使用服务sc create PBUService binpath= "C:\PBULogger.exe"
这是正确的路径。
没有什么是在事件查看器下的任何记录,我的异常处理代码不火无论是。
我想,也许我没有安装正确的.NET版本,但是我已经安装了XP的计算机上4.0。 不过,我创建了使用Visual Studio Express的2012年,我敢肯定,默认情况下使用.NET 4.5这个项目。 难道这造成的问题吗? 我使用所有的类都是4.0版本。
我有我所有的代码精简到基方法,这仍然无法正常工作。 这里是我的代码:
namespace PBULogger {
class PBULoggerService : ServiceBase {
protected override void OnStart(string[] args) {
try {
base.OnStart(args);
} catch (Exception ex) {
EmailUtility.sendEmail("Service Error", ex.Message + ex.StackTrace);
}
}
protected override void OnStop() {
base.OnStop();
}
}
由于它不记录在事件查看器,它告诉我,它甚至没有试图启动该服务。
我发现我的注册表这些条目下的“HKEY_LOCAL_MACHINE /系统/ ControlSet001 /枚举/服务/ PBUService /枚举”服务。
真的不知道这意味着什么。
任何人都知道这是怎么回事?