0203  04    09  10该项目是Windows服务,直接打开“CocoWatcher.exe”会报错,如图1所示:运行该守护程序需安装Windows服务,点击批处理文档“安装.bat”即可,“安装.bat”具体内容如下:1"%cd%InstallUtil.exe""%cd%CocoWatcher.exe"2netstart"CocoWatcher"3pause如果你想卸载该守护程序,点击批处理文档“卸载.bat”,“卸载.bat”具体内容如下:1netstop"CocoWatcher"2"%cd%InstallUtil.exe""%cd%CocoWatcher.exe" -u3taskkill/f/imCocoWatcher.exe4pause3.需求分析用户指定要守护的应用程序(数量不限),该应用程序不仅包括exe可执行文件,还包括诸如jpg、txt等所有能双击打开执行的应用程序。用户设定好要守护的应用程序后,关闭应用程序(包括合法和非法关闭),该应用程序要能立即重启打开。当电脑重启时,要守护的应用程序也能自动全部打开。4.详细设计要实现上述需求,首先要提供一个配置档,让用户能随意配置要守护的应用程序。那么,该配置档要配置应用程序的什么信息呢?答案:应用程序的全路径。好,我们已经知道了要守护的应用程序的全路径,接下来怎样完成守护任务呢?首先,我们应该打开任务管理器,查看一下正在运行的有哪些进程,然后逐一读取出这些进程的全路径,与要守护的应用程序的全路径比对,如果一致,说明要守护的应用程序已开启了,此时要分配一条线程监控该进程句柄,当该进程句柄返回信息,说明该进程已关闭,此时释放进程句柄内存,并重启该进程。如果遍历任务管理进程列表中所有进程,没有找到与要守护的应用程序的全路径一致的进程,说明要守护的应用程序尚未打开,此时要启动该应用程序,然后转入监控流程。值得注意的是,一定要额外分配线程去监控要守护的应用程序,为什么?因为如果你用主线程(入口函数线程)去执行监控任务,会被长期阻塞,直到进程退出才会被激活,这样就无法运行后续程序。况且,监控程序要实现持续监控,要使用死循环,如果主线程进入死循环,就无法监控其他要守护的进程了。-IMDN开发者社群-imdn.cn"> 0203  04    09  10该项目是Windows服务,直接打开“CocoWatcher.exe”会报错,如图1所示:运行该守护程序需安装Windows服务,点击批处理文档“安装.bat”即可,“安装.bat”具体内容如下:1"%cd%InstallUtil.exe""%cd%CocoWatcher.exe"2netstart"CocoWatcher"3pause如果你想卸载该守护程序,点击批处理文档“卸载.bat”,“卸载.bat”具体内容如下:1netstop"CocoWatcher"2"%cd%InstallUtil.exe""%cd%CocoWatcher.exe" -u3taskkill/f/imCocoWatcher.exe4pause3.需求分析用户指定要守护的应用程序(数量不限),该应用程序不仅包括exe可执行文件,还包括诸如jpg、txt等所有能双击打开执行的应用程序。用户设定好要守护的应用程序后,关闭应用程序(包括合法和非法关闭),该应用程序要能立即重启打开。当电脑重启时,要守护的应用程序也能自动全部打开。4.详细设计要实现上述需求,首先要提供一个配置档,让用户能随意配置要守护的应用程序。那么,该配置档要配置应用程序的什么信息呢?答案:应用程序的全路径。好,我们已经知道了要守护的应用程序的全路径,接下来怎样完成守护任务呢?首先,我们应该打开任务管理器,查看一下正在运行的有哪些进程,然后逐一读取出这些进程的全路径,与要守护的应用程序的全路径比对,如果一致,说明要守护的应用程序已开启了,此时要分配一条线程监控该进程句柄,当该进程句柄返回信息,说明该进程已关闭,此时释放进程句柄内存,并重启该进程。如果遍历任务管理进程列表中所有进程,没有找到与要守护的应用程序的全路径一致的进程,说明要守护的应用程序尚未打开,此时要启动该应用程序,然后转入监控流程。值得注意的是,一定要额外分配线程去监控要守护的应用程序,为什么?因为如果你用主线程(入口函数线程)去执行监控任务,会被长期阻塞,直到进程退出才会被激活,这样就无法运行后续程序。况且,监控程序要实现持续监控,要使用死循环,如果主线程进入死循环,就无法监控其他要守护的进程了。 - IMDN开发者社群-imdn.cn">
登录
首页 » C# » C# 实现进程守护功能 通用于所有进程,非法关闭和关机依然适用 附完整源码下载

C# 实现进程守护功能 通用于所有进程,非法关闭和关机依然适用 附完整源码下载

于 2013-07-19 发布
0 388
下载积分: 1 下载次数: 0

代码说明:

1. 下载本实例源码                      2. 安装注意事项 在配置档中配置你要守护的应用程序,应用程序之间用逗号隔开: 01 02 03   04     09   10 该项目是Windows服务,直接打开“CocoWatcher.exe”会报错,如图1所示:运行该守护程序需安装Windows服务,点击批处理文档“安装.bat”即可,“安装.bat”具体内容如下: 1 "%cd%InstallUtil.exe" "%cd%CocoWatcher.exe" 2 net start "CocoWatcher" 3 pause 如果你想卸载该守护程序,点击批处理文档“卸载.bat”,“卸载.bat”具体内容如下: 1 net stop "CocoWatcher" 2 "%cd%InstallUtil.exe" "%cd%CocoWatcher.exe"  -u 3 taskkill /f /im CocoWatcher.exe 4 pause 3. 需求分析 用户指定要守护的应用程序(数量不限),该应用程序不仅包括exe可执行文件,还包括诸如jpg、txt等所有能双击打开执行的应用程序。用户设定好要守护的应用程序后,关闭应用程序(包括合法和非法关闭),该应用程序要能立即重启打开。当电脑重启时,要守护的应用程序也能自动全部打开。 4. 详细设计 要实现上述需求,首先要提供一个配置档,让用户能随意配置要守护的应用程序。那么,该配置档要配置应用程序的什么信息呢?答案:应用程序的全路径。 好,我们已经知道了要守护的应用程序的全路径,接下来怎样完成守护任务呢?首先,我们应该打开任务管理器,查看一下正在运行的有哪些进程,然后逐一读取出这些进程的全路径,与要守护的应用程序的全路径比对,如果一致,说明要守护的应用程序已开启了,此时要分配一条线程监控该进程句柄,当该进程句柄返回信息,说明该进程已关闭,此时释放进程句柄内存,并重启该进程。如果遍历任务管理进程列表中所有进程,没有找到与要守护的应用程序的全路径一致的进程,说明要守护的应用程序尚未打开,此时要启动该应用程序,然后转入监控流程。 值得注意的是,一定要额外分配线程去监控要守护的应用程序,为什么?因为如果你用主线程(入口函数线程)去执行监控任务,会被长期阻塞,直到进程退出才会被激活,这样就无法运行后续程序。况且,监控程序要实现持续监控,要使用死循环,如果主线程进入死循环,就无法监控其他要守护的进程了。

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • CntrlOtherPrcss
    启动并控制其它Exe程序CntrlOtherPrcss,很不错的vc源码,希望能对大家有所帮助(Start and control other Exe program CntrlOtherPrcss, very good vc source, I hope you can help)
    2011-09-05 23:11:29下载
    积分:1
  • kuqiyc9
    若允许天平两边放砝码,times应从-num[index]开始,并且分段计算sum,本例只放天平一边,()
    2017-11-15 19:47:06下载
    积分:1
  • config
    config.c file from win2000 event log sources.
    2013-10-13 02:27:37下载
    积分:1
  • SoftScope
    功能描述:这是一个示波器波形显示控件,能够完成类似于示波器的功能。最多可以同时显示8个通道的数据波形,可以动态切换显示通道。缩放xy轴,弹出半透明窗口显示坐标,y轴方向平移波形等功能。 操作使用键盘快捷键,操作说明见readme.txt,目前按键焦点的得到有点问题,要点击开始后在示波器上鼠标左键单击一下,然后按一下上箭头键,才可以响应按键指令,有高手知道怎么改进希望告诉作者:xiang57@163.com(Functional Description: This is an oscilloscope waveform display control, able to complete similar oscilloscope function. At the same time show up to eight channels of waveform data can be displayed dynamically switch channels. Zoom xy axis, translucent pop-up window displays the coordinates, y-axis direction of translational wave functions. Operation of the use of keyboard shortcuts, operating instructions see readme.txt, the current key focus has been a problem, it is necessary to click on the oscilloscope after the beginning click the left mouse button, and then click on the arrow keys, before they can respond to key commands, has a master know how to tell the authors hope to improve: xiang57@163.com)
    2008-07-06 21:24:24下载
    积分:1
  • huibian
    寻址方式在结构化数据访问中的应用,(1)掌握不同的内存寻址方式(2)使用结构化的数据存储方式(3)掌握BCD码的编码方式(Addressing modes in structured data access, (1) to master different memory addressing mode (2) using structured data storage (3) The master of BCD encoding)
    2016-04-29 16:26:13下载
    积分:1
  • RELEASEPDLL
    将dll文件加入文件资源之后调用函数释放,实现了将dll文件打包(Dll files will be added to the file after the call function to release resources to achieve the dll file is packaged)
    2013-09-12 21:02:42下载
    积分:1
  • hailang147258
    说明:  本源码是仿真海浪运动的实例,代码有详细的注释,是初学的好例子(???)
    2008-08-30 10:27:52下载
    积分:1
  • c# 嵌入式开发 报警源码下载
    c# 嵌入式开发 报警系统源码下载
    2013-12-29下载
    积分:1
  • nc
    说明:  一个小巧的内存整理工具 无需安装方便使用(A small memory finishing tools without having to install user-friendly)
    2008-01-01 16:05:19下载
    积分:1
  • c# 切换windows桌面背景
    c# 切换windows桌面背景
    2013-07-19下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载