winappdbg: использование функции kernel32 - PullRequest
0 голосов
/ 06 декабря 2011

Я пытаюсь использовать функцию GetProcessTimes (hprocess).

Я использую этот код:

p = debug.excel(argv,bFollow=True)
win32.kernel32.GetProcessTimes(p)

Но это не работает ...

эта функция принимает 4 аргумента (5 дано)

Кто-то может помочь?Что я забыл?

Спасибо

1 Ответ

0 голосов
/ 06 декабря 2011

Могу ли я предложить сделать свой звонок?(Взято с самого питона pybench ):

# if you have win32 process
import win32process
def getprocesstimes_systimes():
    d = win32process.GetProcessTimes(win32process.GetCurrentProcess())
    return (d['UserTime'] / WIN32_PROCESS_TIMES_TICKS_PER_SECOND,
        d['KernelTime'] / WIN32_PROCESS_TIMES_TICKS_PER_SECOND)

# otherwise, ctypes approach
import ctypes
def getprocesstimes_systimes():
    creationtime = ctypes.c_ulonglong()
    exittime = ctypes.c_ulonglong()
    kerneltime = ctypes.c_ulonglong()
    usertime = ctypes.c_ulonglong()
    rc = ctypes.windll.kernel32.GetProcessTimes(
        ctypes.windll.kernel32.GetCurrentProcess(),
        ctypes.byref(creationtime),
        ctypes.byref(exittime),
        ctypes.byref(kerneltime),
        ctypes.byref(usertime))
    if not rc:
        raise TypeError('GetProcessTimes() returned an error')
    return (usertime.value / WIN32_PROCESS_TIMES_TICKS_PER_SECOND,
            kerneltime.value / WIN32_PROCESS_TIMES_TICKS_PER_SECOND)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...