有关用 C# 开发Windows服务,启动时碰到异常如何捕获

hellochina 2005-06-09 11:44:06
使用C#的开发Windows服务工程模板, 开发一个Windows服务: Server1。 
在服务的OnStart函数中,读取配置参数, 如果在读取配置参数信息时发生了异常。
protected override void OnStart(string[] args)
{
string UserName = GetUserName(); //该函数就是从文件当中读取配置信息
                        //该函数产生了异常,就是想在服务以外的
//地方捕获该异常 
}

如果是通过Windows 的服务管理器来启动服务 Server1,就会出现提示信息: 说服务发生内部异常。

但是如果使用C#来编写程序控制服务的启动时,就不能捕获这个异常:
代码如下:
try
{
ServiceController svr = new ServiceController ("Server1");
svr.Start();
}
Catch(Exception e)
{
ShowMessage(e.Message);
}

这个代码将不能捕获到Server1在OnStart函数中抛出的异常 。

请问 .NET 如何才能捕获到 Winodws 服务的异常 
Windows的服务管理器是如何能够捕获到Server1在Onstart函数中抛出的异常 
...全文
296 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellochina 2005-06-10
  • 打赏
  • 举报
回复
windows服务启动的异常,在程序中该如何捕获。
wjlrual 2005-06-09
  • 打赏
  • 举报
回复
up
alexxzr 2005-06-09
  • 打赏
  • 举报
回复
学习!

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧