C# Windows Service 如何出现托盘图标

PaulyJiang 2012-11-15 10:41:43
我现在的方法是在Service里面调用一个Form 这个Form有托盘图标,单独Form能出现托盘可以放到Service里面就不行了。求大神帮忙解决下
...全文
464 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hujiiori 2012-11-15
  • 打赏
  • 举报
回复
服务和窗体程序分开 服务的OnStart里面,启动你的窗体程序, OnStop里面,关闭你的窗体程序, 窗体程序也可以反向去控制你的服务
ktei2008 2012-11-15
  • 打赏
  • 举报
回复
windows service是没有UI的,所以就不要在这上面绞尽脑汁了。然而,你的问题是可以解决的:你需要一个正常的窗口程序,这个程序相当于你的windows service程序的外壳,它们之间可以互相通信,你的窗口程序是可以有UI的,也可以有托盘,要什么有什么,只不过你需要让它时刻与windows service保持联系而已。
DotCpp 2012-11-15
  • 打赏
  • 举报
回复
service是不允许有窗体的,一般做法是在service里面启动一个新的应用程序。
风之影子 2012-11-15
  • 打赏
  • 举报
回复
Hauk 2012-11-15
  • 打赏
  • 举报
回复
因为Windows Service使用的用户一般是local system或其他系统用户,所以启动后看不到任何UI的东西。 因为用户不一样的原因。你可以试试看能不能把Windows Service的启动用户设置成当前登陆用户,如果可以那么就可以看到了。(我没试过)
XBodhi. 2012-11-15
  • 打赏
  • 举报
回复
第一 ,Windows Service 里是不允许有 winform 程序的,
XBodhi. 2012-11-15
  • 打赏
  • 举报
回复
分给别人了,郁闷,windows 服务是状态性的程序,他不算是 windows 应用程序。 你即便按上面说的,用进程调用也是会卡死的,如果你开多线程,那这个服务要是奔溃你都找不到错误点。 因为他需要大量的日志作为 EventLog Source 要不你就悲剧了啊。
PaulyJiang 2012-11-15
  • 打赏
  • 举报
回复
没办法让Service去托盘,只能另外重新写个壳来完成这些事情了。基本搞定了 谢谢各位 结贴

110,571

社区成员

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

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

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