Window提高_3.1练习_双进程守护
双进程守护
当打开一个进程A的时候,此进程检测是否存在进程B,如果不存在就创建进程B。
进程B的作用是检测进程A是否被关闭,如果被关闭了,就再创建一个进程A。
双进程守护A.exe代码如下:
#include "pch.h"
#include <iostream>
#include <windows.h>
int main()
{
while (TRUE)
{
HWND hWnd = FindWindow(NULL, L"双进程守护B");
if (hWnd==NULL)
{ STARTUPINFO StartupInfo = { sizeof(STARTUPINFO) };
PROCESS_INFORMATION ProcessInformation = { };
CreateProcess(L"..\\Debug\\双进程守护B.exe",
NULL, NULL, NULL,
NULL, NULL, NULL, NULL,
&StartupInfo,
&ProcessInformation);
WaitForSingleObject(ProcessInformation.hProcess, -); }
else
{
DWORD dwPid = ;
GetWindowThreadProcessId(hWnd, &dwPid);
HANDLE hProc = OpenProcess(
SYNCHRONIZE, NULL, dwPid);
WaitForSingleObject(hProc, -);
}
}
}
双进程守护B.exe代码如下:
#include "pch.h"
#include <iostream>
#include <windows.h>
int main()
{
while (TRUE)
{
HWND hWnd = FindWindow(NULL, L"双进程守护A");
if (hWnd == NULL)
{
STARTUPINFO StartupInfo = { sizeof(STARTUPINFO) };
PROCESS_INFORMATION ProcessInformation = { };
CreateProcess(L"..\\Debug\\双进程守护A.exe",
NULL,NULL, NULL,
NULL, NULL,NULL, NULL,
&StartupInfo,
&ProcessInformation); WaitForSingleObject(
ProcessInformation.hProcess, -); }
else
{
DWORD dwPid = ;
GetWindowThreadProcessId(hWnd, &dwPid);
HANDLE hProc = OpenProcess(SYNCHRONIZE, NULL, dwPid);
WaitForSingleObject(hProc, -);
}
}
}
Window提高_3.1练习_双进程守护的更多相关文章
- Android 保持Service不被Kill掉的方法--双Service守护 && Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- Android实现双进程守护 (转)
做过android开发的人应该都知道应用会在系统资源匮乏的情况下被系统杀死!当后台的应用被系统回收之后,如何重新恢复它呢?网上对此问题有很多的讨论.这里先总结一下网上流传的各种解决方案,看看这些办法是 ...
- 保持Service不被Kill掉的方法--双Service守护 && Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- Android实现双进程守护
做过android开发的人应该都知道应用会在系统资源匮乏的情况下被系统杀死!当后台的应用被系统回收之后,如何重新恢复它呢?网上对此问题有很多的讨论.这里先总结一下网上流传的各种解决方案,看看这些办法是 ...
- android双进程守护,让程序崩溃后一定可以重启
由于我们做的是机器人上的软件,而机器人是24小时不间断服务的,这就要求我们的软件不能退出到系统桌面.当然最好是能够做到程序能够不卡顿,不崩溃,自己不退出.由于我们引用了很多第三方的开发包,也不能保证他 ...
- Android NDK(C++) 双进程守护
双进程守护如果从进程管理器观察会发现新浪微博.支付宝和QQ等都有两个以上相关进程,其中一个就是守护进程,由此可以猜到这些商业级的软件都采用了双进程守护的办法. 什么是双进程守护呢?顾名思义就是两个进程 ...
- NDK开发和NDK双进程守护
https://www.jianshu.com/p/433b2c93c6a7 NDK进程守护 https://blog.csdn.net/k393393/article/details/7895435 ...
- 安卓android杀不死进程,保护,双进程守护,驻留,Marsdaemon,保活
韩梦飞沙 yue31313 韩亚飞 han_meng_fei_sha 313134555@qq.com =========== Android 进程常驻(0)----MarsDaemon使用说明
- (转)Android Service 双进程常驻后台(2)
最近项目用到Service常驻后台,研究了一下发现手Q和微信都是使用了双进程来保证一键清理后自动复活,copy网上双进程Service的例子,再结合onTrimMemory(),基本实现一键清理后自动 ...
随机推荐
- shell脚本 加密备份MySQL数据库
1.加密备份为.bak文件(实际只是个.zip文件) #!/bin/bash # $:IP地址 # $:用户名 # $:数据库密码 # $:数据库名 # $:加密密码 # $:备份文件名 mysqld ...
- 协方差矩阵与主成分分析PCA
今天看论文,作者是用主成分分析(PCA)的方法做的.仔细学习了一下,有一篇博客写的很好,介绍的深入浅出! 协方差:http://pinkyjie.com/2010/08/31/covariance/ ...
- 恶意IP监控
http://www.icarei.cn/fastdatav/MyDebug/readlog/error/ip191.96.249.136
- HDU2138 素数判定
HDU2138 给定N个32位大于等于2的正整数 输出其中素数的个数 用Miller Rabin 素数判定法 效率很高 数学证明比较复杂,略过, 会使用这个接口即可. #include<iost ...
- C#直接删除指定目录下的所有文件及文件夹(保留目录)
#region 直接删除指定目录下的所有文件及文件夹(保留目录) /// <summary> /// 直接删除指定目录下的所有文件及文件夹(保留目录) /// </summary&g ...
- Ruby检验变量
更新: 2017/06/12 更新: 2017/06/16 补充.class的输出 更新: 2017/06/23 .include?检验数组/哈希表是否包含目标值 更新: 2017/07/02 b ...
- bzoj 1034: [ZJOI2008]泡泡堂BNB【贪心】
是贪心 先把两个数组排序,然后贪心的选让a数组占优的(如果没有就算输),这是最大值,最小值是2n-贪心选b数组占优 #include<iostream> #include<cstdi ...
- bzoj1202: [HNOI2005]狡猾的商人(并查集 差分约束)
1202: [HNOI2005]狡猾的商人 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4127 Solved: 1981[Submit][Sta ...
- Can't install '*' from pristine store, because no checksum is recorded for this file (SVN报错)
问题:同步.cleanup都会出现下面的提示 svn: E155017: Can't install '*' from pristine store, because no checksum is r ...
- redis在linux的安装和开机启动(二)
编译 安装 makefile已经存在 执行make 即可 make之后, 自动创建可运行的脚本文件, 不需要再执行 install了. 将脚本文件, 拷贝到指定位置, 就可以了. 手动创建目录, 需要 ...