C# 在系统服务中如何实现  弹出提示 MessageBox.Show("网络丢失");
情况:
系统需要连接数据库,我做了一个 win系统服务 每隔5秒连接一次,如果 连接失败我想弹出 提示框.
protected override void OnStart(string[] args)
{
            try
            {
                time = new System.Timers.Timer(1000 * 10);//设定时间  
                time.Enabled = true;
                time.Elapsed += this.mymgs; //达到间隔后运行
                time.Start();  //开始计时
            }
            catch
            {
            }
}
private void mymgs(object sender, EventArgs e)
{if(chkdb)
{
MessageBox.Show("网络丢失");
}
else
{
}
}private bool mymgs()
{//略}

解决方案 »

  1.   

    服务需要设置勾选“允许与桌面交互”属性。
    不过要注意的是如果没人点确定按钮,那个服务就会停止不到了。 你确定要这么做?
    个人感觉不如发email或者写日志。
      

  2.   

    你写一个弹出对话框的程序,然后在服务里面写:Process.Start("弹出程序的路径");意思是启动程序。过去回1张贴就气喘吁吁,现在用了《Csdn收音机》,一口气回5张贴不费劲!
      

  3.   

    如果你是放在web服务器上,那么可以写日志文件,或者发邮件、发短信。不要弹出对话框。