C# 编写的Windows serice程序. 安装时出现异常!

Rason401 2008-01-29 04:32:37
初学Windows Service 程序的编写,按照MSDN上写了一个service! 遇到安装服务的错误, 能帮忙看下是什么原因吗? 下面是在命令行下的安装结果:

正在运行事务处理安装。

正在开始安装的“安装”阶段。
查看日志文件的内容以获得 C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects
\Test_Service\Test_Service\bin\Debug\test_service.exe 程序集的进度。
该文件位于 C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_Service\
Test_Service\bin\Debug\test_service.InstallLog。
正在安装程序集“C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_Ser
vice\Test_Service\bin\Debug\test_service.exe”。
受影响的参数是:
logtoconsole =
assemblypath = C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_S
ervice\Test_Service\bin\Debug\test_service.exe
i =
logfile = C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_Servic
e\Test_Service\bin\Debug\test_service.InstallLog
正在安装服务 Service1...
正在日志 Application 中创建 EventLog 源 Service1...

在“安装”阶段发生异常。
System.Security.SecurityException: 未找到源,但未能搜索某些或全部事件日志。不可
访问的日志: Security。


正在开始安装的“回滚”阶段。
查看日志文件的内容以获得 C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects
\Test_Service\Test_Service\bin\Debug\test_service.exe 程序集的进度。
该文件位于 C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_Service\
Test_Service\bin\Debug\test_service.InstallLog。
正在回滚程序集“C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_Ser
vice\Test_Service\bin\Debug\test_service.exe”。
受影响的参数是:
logtoconsole =
assemblypath = C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_S
ervice\Test_Service\bin\Debug\test_service.exe
i =
logfile = C:\Users\Ramon.Fu\Documents\Visual Studio 2005\Projects\Test_Servic
e\Test_Service\bin\Debug\test_service.InstallLog
正在将事件日志还原到源 Service1 的前一状态。
在 System.Diagnostics.EventLogInstaller 安装程序的“回滚”阶段发生异常。
System.Security.SecurityException: 未找到源,但未能搜索某些或全部事件日志。不可
访问的日志: Security。
在安装的“回滚”阶段发生异常。将忽略该异常并继续回滚。但是,在完成回滚后计算机可
能无法完全还原到它的初始状态。

“回滚”阶段已成功完成。

已完成事务处理安装。
安装失败,已执行回滚。
...全文
2755 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
tkl90 2012-10-29
  • 打赏
  • 举报
回复
xp系统下没有"以管理员省份运行"这个菜单选项吧?
ac13 2012-07-15
  • 打赏
  • 举报
回复
果然有用,在此远程谢过了
elloop 2012-05-21
  • 打赏
  • 举报
回复
顶,以管理员省份运行命令提示符果然有用。
red36921 2010-12-30
  • 打赏
  • 举报
回复
直接右键单击“以管理员身份运行”Visual Studio Command Prompt即可
这句解决问题
kendonal 2009-05-11
  • 打赏
  • 举报
回复
具体怎么新建项啊?
「已注销」 2008-04-12
  • 打赏
  • 举报
回复
明白怎么回事了 权限不在于我们编写的service 而是vs命令行工具:
直接右键单击“以管理员身份运行”Visual Studio Command Prompt即可

如果还不行,可以直接在注册表里预先建好日志项(运行regedit,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog
右键单击新建-->项)

(估计你已经搞定了 小把戏 呵呵 也懵了我一天 总以为是自己写的服务那里没设置好)
「已注销」 2008-04-11
  • 打赏
  • 举报
回复
遇到同样的问题 应该是因为没有日志访问权限
目前尚未搞定 持续关注中 楼主什么进展?有办法了给指点指点
huayiluo 2008-01-29
  • 打赏
  • 举报
回复
友情up!

110,546

社区成员

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

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

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