C#做windows服务的问题

eabodn 2008-09-11 03:17:18
怎么才能让服务打开指定窗体??最好有示例。。。帮帮忙吧~~
...全文
100 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
uephee 2008-09-11
  • 打赏
  • 举报
回复
slimfeng 2008-09-11
  • 打赏
  • 举报
回复
用服务也不难
我做的一个监控程序,调试的时候需要查看用系统事件日志

public void MonitorProcess()
{
// Create the source, if it does not already exist.
if (!EventLog.SourceExists("MySource"))
{
EventLog.CreateEventSource("MySource", "MyNewLog");

}
EventLog myLog = new EventLog();
myLog.Source = "MySource";

List<String> CurrentSystemProcessList = new List<String>();
CurrentSystemProcessList.Clear();
Process[] localAll = Process.GetProcesses();
//EventLog myLog = new EventLog("ServiceTest", ".", "ServiceTest");
StringBuilder msg = new StringBuilder("");
for (int i = 0; i < localAll.Length; i++)
{
if (localAll[i].ProcessName == "Rever")
{
//localAll[i].Close();
try
{
bool IsCloseMainWindow = false;
IsCloseMainWindow=localAll[i].CloseMainWindow();
if(!IsCloseMainWindow)
{

msg.Remove(0, msg.Length);
msg.Append(DateTime.Now.ToString());
msg.Append(" 进程调用CloseMainWindow,没有成功!");
myLog.WriteEntry(msg.ToString());

localAll[i].Kill();
}
localAll[i].WaitForExit();
//this.Stop();
Process.Start(@"D:\Rever.exe");
msg.Remove(0, msg.Length);
msg.Append(DateTime.Now.ToString());
msg.Append(" 程序执行成功!");
myLog.WriteEntry(msg.ToString());
}
catch (Win32Exception ee)
{
msg.Remove(0, msg.Length);
msg.Append(DateTime.Now.ToString());
msg.Append(" 退出程序失败!");
myLog.WriteEntry(msg.ToString());
}
}
}

}
eabodn 2008-09-11
  • 打赏
  • 举报
回复
哦 可以实验下哈~
int64 2008-09-11
  • 打赏
  • 举报
回复
你的功能做一个完整的exe,和服务无关。

做一个服务,每分钟检测进程中该exe是否在运行,如果不运行就启动。

可以在exe的工程中加一个项目,做服务的。

结果就是启动2个exe,一个是功能exe,一个是服务exe
eabodn 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 int64 的回复:]
把功能单独做一个exe,
然后做一个服务器调用这个exe。比如定时1分钟检测exe是否打开,如果没打开就启动exe。
[/Quote]
en ?那应该怎么做
、?
int64 2008-09-11
  • 打赏
  • 举报
回复
把功能单独做一个exe,
然后做一个服务器调用这个exe。比如定时1分钟检测exe是否打开,如果没打开就启动exe。
eabodn 2008-09-11
  • 打赏
  • 举报
回复
嗯。。。刚才还可以打开一个窗体的 现在跟我说程序不支持 点一下显示就换屏了。。。
lude8880 2008-09-11
  • 打赏
  • 举报
回复
我就知道windows服务不能打开messagebox进行调试为什么别问我

110,538

社区成员

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

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

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