Найти - Пользователи
Полная версия: как "ковырнуть в заду" у питоновских скомпиленых сишных либ
Начало » Python для экспертов » как "ковырнуть в заду" у питоновских скомпиленых сишных либ
1
@cckyi_boxxx
Сразу оговорюсь, в этом направлении знания полностью отсутствуют, поэтому прошу профи умеющих работать с компилеными сишными питонолибами разъяснить что и в какой последовательности учить.

Мотивация проста, относительно недавно стояла задача сделать на PySide2.QtWebEngine то что не предусмотрено ни разрабами PySide2, ни разрабами Qt. В резельтате с кучей костылей благодаря js-инжектам все-же реализовал задуманное. Сегодня интереса ради скачал исходники кутэхи и понял что будь доступ хотя-бы к половине того что запрогано в модуле QtWebEngine и можно было-бы вытворять абсолютно что угодно без ограничений. После увиденного я осознал что научиться получать из питоноскрипта доступ напрямую к сишной либе, в том числе к тем ее объектам которые не предоставлены в АПИ, будет хорошим подспорьем в написании софта, и что-то мне подсказывает что такая потребность возникнет еще не раз.

Пока-что мысли сходятся к тому что-бы прицепить к этим либам сишный дебаггер с управой из под питона (если такой существует) и совокуплять либу на уровне ассемблера. Если есть другие пути без редактирования кода самой сишной либы, буду рад узнать о них подробнее.

Ну и самое главное, кто уже обладает такими навыками расскажите пожалуйста:
1) какие навыки нужны для той или иной реализации задуманного?
2) в какой последовательности посоветуете учить?
3) сколько времени у вас заняло обучение этим навыкам?
doza_and
Если надо что-то схватить из dll/so то достаточно ctypes.

Но вам не всегда могут это “показать”. Тогда лучше собирать из исходников пропатченную версию. Или форк свой создать. А интерфейсы qt это помоему надо в сторону sip смотреть.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB