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(),基本实现一键清理后自动 ...
随机推荐
- redis 事务 及发布于订阅功能
事务: Redis事务可以一次执行多个命令,事务具有以下特征: 1.隔离操作:事务中的所有命令都会序列化.按顺序地执行,不会被其他命令打扰. 2.原子操作:事务中的命令要么全部被执行,要么全部都不执行 ...
- EXISTS 执行顺序 CLR-2-2-引用类型和值类型
EXISTS 执行顺序 select * from a where a.s_status=1 and exists (select orderid from b on a.orderid=b.or ...
- (二)Java 简介
Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式 ...
- exception log
except Exception as e: l = [str(i) for i in [dbid, f_mp3, e]] log_s = '||'.join(l) logging.exception ...
- libXdmcp.so.6
Traceback (most recent call last): File "/data/xiaole_dl_img/product.v.one.banner.fixedperiod.g ...
- 下载的php_yal.dll文件添加到php的ext
下载的php_yal.dll文件添加到php的ext http://pecl.php.net/package/yaf/3.0.6/windows yaf. use_namespace=1 ;;exte ...
- USACO Section1.1PROB Broken Necklace
有点麻烦的一道模拟(官方题解好像有复杂度为$O(n)$DP的姿势?,感觉好烦,以后再细看~ 在一些细节上调试了很久很久,囧RZ /* ID: jusonal1 PROG: beads LANG: C+ ...
- linux centos7 安装mysql-5.7.17教程(图解)
1系统约定安装文件下载目录:/data/softwareMysql目录安装位置:/usr/local/mysql数据库保存位置:/data/mysql日志保存位置:/data/log/mysql 2下 ...
- git回到没push的commit
创建: 2017/10/28 merge master以后数据库出了问题,改好以后发现view有点问题,commit以后没提交就reset了.过后才想起来怎么回去???吓成狗,索性找到了下面这个. ...
- CSS3 核心知识面试题
一种常见利用伪类清除浮动的代码 .clearfix:after { content:"."; //这里利用到了content属性 display:block; height:; v ...