windows系统调用 进程快照
#include "windows.h"
#include "tlhelp32.h"
#include "iostream"
using namespace std; #pragma comment(lib,"kernel32.lib") DWORD GetKernelModePercentage(const FILETIME& ftKernel,
const FILETIME& ftUser
){
ULONGLONG qwKernel=(((ULONGLONG)ftKernel.dwHighDateTime)<<)+ftKernel.dwLowDateTime;
ULONGLONG qwUser=(((ULONGLONG)ftUser.dwHighDateTime)<<)+ftUser.dwLowDateTime;
ULONGLONG qwTotal=qwKernel+qwUser;
DWORD dwPct=(DWORD)(((ULONGLONG)*qwKernel)/qwTotal);
return (dwPct); } void main(){
HANDLE hSnapshot=CreateToolhelp32Snapshot(
TH32CS_SNAPPROCESS, ); PROCESSENTRY32 pe; ZeroMemory(&pe,sizeof(pe));
pe.dwSize=sizeof(pe); BOOL bMore=Process32First(hSnapshot,&pe); while(bMore){
HANDLE hProcess=OpenProcess(
PROCESS_QUERY_INFORMATION,
FALSE,
pe.th32ProcessID
); if(hProcess!=NULL){
FILETIME ftCreation,ftKernelMode,ftUserMode,ftExit;
GetProcessTimes(
hProcess,
&ftCreation,
&ftExit,
&ftKernelMode,
&ftUserMode ); DWORD dwPctKernel=GetKernelModePercentage(
ftKernelMode,
ftUserMode
); cout<<"process ID:"<<pe.th32ProcessID
<<",EXE file:"<<pe.szExeFile
<<",% in Kernel mode:"<<dwPctKernel<<endl; CloseHandle(hProcess);
}
bMore=Process32Next(hSnapshot,&pe);
} getchar();
}
windows系统调用 进程快照的更多相关文章
- windows系统调用 进程终止
#include "windows.h" #include "iostream" #include "stdio.h" using name ...
- Win32进程创建、进程快照、进程终止用例
进程创建: 1 #include <windows.h> #include <stdio.h> int main() { // 创建打开系统自带记事本进程 STARTUPINF ...
- windows 下进程与线程的遍历
原文:http://www.cnblogs.com/Apersia/p/6579376.html 在Windows下进程与线程的遍历有好几种方法. 进程与线程的遍历可以使用<TlHelp.h&g ...
- 关于Windows创建进程的过程
之前有听到别人的面试题是问系统创建进程的具体过程是什么,首先想到的是CreateProcess,但是对于具体过程却不是很清楚,今天整理一下. 从操作系统的角度来说 创建进程步骤: 1.申 ...
- Windows系统调用中API从3环到0环(下)
Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html Windows系统调用中API从3环到0环(下) 如果对API在 ...
- Windows API 进程相关笔记
0. 前言 最近做了一个进程信息相关的项目,整理了一下自己做项目时的笔记,分享给大家 1. 相关概念 1.1 HANDLE 概念 HANDLE(句柄)是Windows操作系统中的一个概念. 在Wind ...
- Linux进程快照相关知识
查寻内核版本 uname -a // uname -r 进程快照 ps report a snapshot of the current processes USER ...
- Windows守护进程简单示例
转载: https://blog.csdn.net/kikaylee/article/details/51395360 /* @描述:一个简单的Windows守护进程的例子(C++版本) @作者:ki ...
- windows 检测进程pid
根据端口查进程: netstat -ano |find " netstat -ano | findstr 2018 a 显示所有连接和侦听的端口n 以数字形式显示地址和端口号o 显示关联的进 ...
随机推荐
- Asp.net forms认证注意事项
1.N台服务器配置文件的相关配置要一致 <authentication mode="Forms"> <forms timeout="3600" ...
- sqlserver 通过convert取得指定格式的时间
http://msdn.microsoft.com/zh-cn/library/ms187928(v=sql.105).aspx CONVERT(NVARCHAR(10),Created,112) 不 ...
- Photoshop:通过图片理解通道原理
电脑上的图像通过色光三原色RGB表现,不同颜色存储在不同的通道,所以RGB模式下有3条通道,CMYK模式有4条通道等等 打开一张照片,查看通道 可以看出,显示越白的地方,对应的原色越深. 默认phot ...
- appium关于定位元素
Windows上定位元素我用的是uiautomatorviewer 这个工具在你的SDK-tools目录下,点击uiautomatorviewer.bat启动,注意appium在跑的时候是取不到的 工 ...
- Fiddler-008-简单模拟性能测试
通过 Fiddler 可以简单的模拟性能测试的并发测试,此方法非常的简单,直接讲述如何使用,敬请参阅! 首先我们要获取需要并发的 HTTP请求,此操作非常简单,则在此不再赘述.获取到响应的 HTTP请 ...
- I.MX6 WIFI wireless_tools 移植
/******************************************************************************** * I.MX6 WIFI wirel ...
- h5固定表头公共样式
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scal ...
- php常用转义字符‘ “ {} $ \n
php 单引号和双引号的区别: 双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符. <?php $a = 'abc'; echo "<br>&quo ...
- JavaScript:JavaScript语法的详细介绍
JavaScript语法:只要Java会了,基本上javascript语法就会了. ——变量的定义 ——程序的结构控制 ——数组操作 ——函数的定义即使用 基本的test.html代码如下,它会导入下 ...
- linux 入门
php php -v ------------------ 阿帕奇 apachectl -v httpd -v ----------------------------- mys ...