返回顶部

收藏

window下调用api列出当前所有进程

更多
#!/usr/bin/env python
#-*- coding:utf-8 -*-

"通过调用API获取进程列表"

import ctypes;

__metaclass__ = type;

class PROCESSENTRY32(ctypes.Structure):
    _fields_ = [
        ("dwSize",ctypes.c_ulong),
        ("cntUsage",ctypes.c_ulong),
        ("th32ProcessID",ctypes.c_ulong),
        ("th32DefaultHeapID",ctypes.c_void_p),
        ("th32ModuleID",ctypes.c_ulong),
        ("cntThreads",ctypes.c_ulong),
        ("th32ParentProcessID",ctypes.c_ulong),
        ("pcPriClassBase",ctypes.c_long),
        ("dwFlags",ctypes.c_ulong),
        ("szExeFile",ctypes.c_char*260)
    ]

kernel32 = ctypes.windll.LoadLibrary("kernel32.dll");
pHandle = kernel32.CreateToolhelp32Snapshot(0x2,0x0);

import sys;

if pHandle==-1:
    sys.exit();

proc = PROCESSENTRY32();
proc.dwSize = ctypes.sizeof(proc);

while kernel32.Process32Next(pHandle,ctypes.byref(proc)):
    print("ProcessName : %s - ProcessID : %d"%(ctypes.string_at(proc.szExeFile),proc.th32ProcessID));

kernel32.CloseHandle(pHandle);
#该片段来自于http://outofmemory.cn

标签:python,系统

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 博主 发表 2014-11-14 03:27:24 python获取系统的ip地址
  2. creke 发表 2012-11-07 16:02:08 Linux安装Python2.7并保留自带版本
  3. 0X55AA 发表 2014-08-12 07:09:15 pyrasite项目总结为一条命令
  4. Neo 发表 2014-07-13 07:37:55 在 DreamHost 上安装 Python 和 VirtualEnv
  5. Neo 发表 2014-07-13 23:04:08 在 DreamHost 上搭建 Flask 项目
  6. 博主 发表 2017-05-24 00:00:00 Python重构logging系统
  7. master 发表 2014-05-31 03:01:11 pip install 时报错“unused-command-line-argument-hard-
  8. master 发表 2015-11-24 05:08:57 交互模式下python自动补全和vim中python自动补全
  9. 博主 发表 2015-04-05 00:00:00 Python Spider: 迎新系统学生信息爬取
  10. admin 发表 2018-06-21 02:30:19 Nginx模块在Python开发中的应用
  11. 博主 发表 2016-01-27 09:20:02 Mac OS X系统中如何安装Python
  12. 博主 发表 2014-11-14 03:27:24 python获取系统的ip地址

发表评论