使用Python调用Windows API获取进程相关信息

作者:佚名 上传时间:2023-05-28 运行软件:PyCharm 2020.2 软件版本:Python 3.8.5 版权申诉

介绍如何使用Python调用Windows API中的一些函数获取进程PID、路径、命令行等相关信息的实现方法。

'''
import ctypes
from ctypes import wintypes

# 调用Windows API中的函数获取进程相关信息
kernel32 = ctypes.WinDLL('kernel32', use_last_error=True)
OpenProcess = kernel32.OpenProcess
OpenProcess.argtypes = [wintypes.DWORD, wintypes.BOOL, wintypes.DWORD]
OpenProcess.restype = wintypes.HANDLE

GetModuleFileNameExW = kernel32.GetModuleFileNameExW
GetModuleFileNameExW.argtypes = [wintypes.HANDLE, wintypes.HANDLE, wintypes.LPWSTR, wintypes.DWORD]
GetModuleFileNameExW.restype = wintypes.DWORD

GetCommandLineW = kernel32.GetCommandLineW
GetCommandLineW.argtypes = []
GetCommandLineW.restype = wintypes.LPWSTR

# 获取指定进程的路径、命令行等信息
pid = 1234
process_handle = OpenProcess(0x0400 | 0x0010, False, pid) # PROCESS_QUERY_INFORMATION | PROCESS_VM_READ
if process_handle:
    path = ctypes.create_unicode_buffer(wintypes.MAX_PATH)
    length = GetModuleFileNameExW(process_handle, None, path, wintypes.MAX_PATH)
    if length:
        print(f'进程路径:{path.value}')

    command_line = GetCommandLineW()
    if command_line:
        print(f'进程命令行:{command_line}')

    kernel32.CloseHandle(process_handle)
else:
    print('获取进程句柄失败')
'''

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
使PythonWindows API
介绍如何使用Python调用Windows API中的一些函数获取进程PID、路径、命令行等相关信息的实现方法。'''import ctypesfrom ctypes import wintyp
Python 3.8.5
PyCharm 2020.2
2023-05-28 19:05
C++Windows APICPU
本示例演示如何使用C++调用Windows API获取CPU信息,包括CPU型号、核心数、处理器架构等信息。实现方式是通过使用和解释Windows API和C++的定义类型、函数调用、结构体等。#i
Windows 10
Visual Studio 2019
2023-05-25 10:24
使PythonECS2
上一次我们已经知道如何用python获取ECS信息了,不知道的可以点 这里 1.返回数据格式
Windows使PythonAPI列表
介绍使用Python编写程序,在Windows操作系统下调用API函数获取进程列表。程序使用了ctypes库调用kernel32.dll中的CreateToolhelp32Snapshot和Proce
Python 3.8.5
PyCharm 2021.1.2
2023-04-25 02:09
使PythonWindows的方法
介绍如何使用Python在Windows下获取进程的PID、名称、CPU占用率等信息。使用了win32api和psutil库,通过调用系统接口获取信息。import win32apiimport
Python 3.7.9
2023-03-19 13:33
使C#Windows Mobile API电池电量
本示例代码演示了如何使用C#编写代码,调用Windows Mobile API获取设备当前的电池电量信息,实现对电量信息的实时监控和显示。using System;using System.Run
Windows Mobile 6.5
Visual Studio 2008
2023-03-20 12:20
使PythonWindows系统
该示例代码使用Python编写,通过调用Windows系统API获取系统信息,如CPU信息、内存信息、磁盘信息等。import osimport platformdef get_cpu_inf
Python 3.8.2
Visual Studio Code
2023-03-18 19:56
使Python解析DNS请求并
本示例代码使用Python语言,通过DNS请求解析,获取相关的IP地址、MX记录、TXT等信息。import dns.resolver# 指定需要解析的域名domain = 'github.c
Python 3.8.5
2023-05-30 14:25
Python3ECS
aliyun-openapi-python-sdk ecs api概览传送门 Openapi pip3
使PythonWindowsCPU
本代码使用Python语言,通过调用Windows系统API函数获取系统CPU信息,包括CPU型号和核数等,并将其打印输出。实现方式为通过ctypes库调用Windows系统API函数,使用Pytho
Python 3.8.5
Windows操作系统下的Python编译器
2023-05-01 11:04