有两个程序 A和B,B是负责处理数据,A是负责定时检查B是否运行,如果B没有运行,就运行B.

解决方案 »

  1.   

    把A做成服务,系统一启动就启动了A
    然后A就启动B,或者监视B
      

  2.   

    谢谢copico(学好.NET,天天进步) 
    但有个问题,如果b操作失败了,我的程序会自动将b关闭,然后a再去调用b(定时去判断b是否运行,如果没有,则调用),
    在2005中,怎样做windows服务,好像在建项目时没有这个选项,
      

  3.   

    参看
    http://blog.csdn.net/knight94/archive/2006/03/16/625809.aspx
      

  4.   

    2005没有做服务的么,不知道,现在用的2003
    定时判断b是否运行,用一个process定位到你的程序
    然后看该process是否有反应
    Process p = new Process();
    p.StartInfo.FileName="你的程序";
    p.start()
    然后看p是否在运行状态我来看看Knight94(愚翁) 的方法
      

  5.   

    楼上都回答了。
    思路就是判断进程中是否存在。(process)
      

  6.   

    timer让A定时检查B
    Process来启动B
      

  7.   

    检查B是否在进程中就知道了B是否在运行
    System.Diagnostics
      

  8.   

    做个windows服务
    或者
    检查进程名称
      

  9.   

    现在都知道了,但好象2005中没有生成windows服务这个.
      

  10.   

    那就另做个a程序,在后台运行
    系统一启动a就启动,不过a的权限不高,可能被断掉然后a再监视b