如题,我做了一个Windows服务程序是为了更新一个应用程序,当发现有更新的时候就下载新的东西,但是如果此时这个应用程序正在运行,就需要将这个应用程序关掉才能更新,我想弹出一个对话框来提示用户保存好自己的信息,再关掉这个应用程序,关掉后再更新,更新完毕再启动那个应用程序。谢谢各位。我无法弹出那个选择对话框,更新完后我启动那应用程序,进程是启动了,但是弹不出界面,为什么,请各位帮帮忙,谢谢!

解决方案 »

  1.   

    服务调另外的winform程序弹对话框,不过这样效果不好服务先下载更新的程序,然后在更新的程序里做当前程序是否在运行的判断,
    如果运行则建议关掉或主动关掉
      

  2.   

    MessageBox.Show(
        "text", 
        "caption", 
        MessageBoxButtons.OKCancel, 
        MessageBoxIcon.Question, 
        MessageBoxDefaultButton.Button2, 
        MessageBoxOptions.ServiceNotification        //<---
        );或者用WTSSendMessage API,还可以指定超时时间。
      

  3.   

    我试了谈不出来哦,
    MessageBoxResult ss = MessageBox.Show("更新下载完毕,请关闭应用程序才能安装,你是否要现在安装?", "提示", MessageBoxButton.YesNo, MessageBoxImage.Question);
    if(if (ss == MessageBoxResult.Yes))
    {//安装过程}
    请问要实现这一该怎么做呢?
      

  4.   

    如果是Vista或以上,你就用WTSSendMessage API吧。
      

  5.   

    和一楼说的相似
    http://blog.csdn.net/jinhill/article/details/5910425