Как написать инструмент анализа дампа на Python без использования PYKD.PYD?Python

Программы на Python
Ответить
Anonymous
 Как написать инструмент анализа дампа на Python без использования PYKD.PYD?

Сообщение Anonymous »

Раньше я работал с heap_stat.py, сценарием Python, который запускался внутри сеанса Windbg после открытия файла дампа.
Поскольку PYKD.PYD устарел, я ищу другое решение, и мне сообщили, что такой сценарий Python может быть написан без библиотеки PYKD.PYD. Очевидно, что способ работы должен измениться; вместо: это будет выглядеть так:

Код: Выделить всё

python heap_standalone.py 
Очевидно, что для того, чтобы это работало, необходимо изменить сценарий (нужно заменить все ссылки PYKD.PYD), поэтому я начал:

Код: Выделить всё

import ctypes
dbgeng = ctypes.WinDLL("dbgeng.dll")
from dbgeng import DebugClient
dbg = dbgeng.DebugClient()
Похоже, это не работает:

Код: Выделить всё

ModuleNotFoundError: No module named 'dbgeng'
Однако на моем компьютере есть dbgeng.dll:

Код: Выделить всё

C:\>dir /S /B "dbgeng.dll"
C:\Users\DDESCA\AppData\Roaming\Python\Python39\site-packages\pykd\dbgeng.dll
C:\Users\DDESCA\AppData\Roaming\Python\Python39\site-packages\~ykd\dbgeng.dll
C:\Windows\System32\dbgeng.dll
C:\Windows\SysWOW64\dbgeng.dll
C:\Windows\WinSxS\amd64_microsoft-windows-wer-sdktools_31bf3856ad364e35_10.0.26100.1_none_3d159ca749751acb\dbgeng.dll
C:\Windows\WinSxS\wow64_microsoft-windows-wer-sdktools_31bf3856ad364e35_10.0.26100.1_none_476a46f97dd5dcc6\dbgeng.dll
Как только все заработает, мне просто нужно будет заменить dbgCommand() на dbg.execute().
С чего начать?>

Подробнее здесь: https://stackoverflow.com/questions/798 ... g-pykd-pyd
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»