Итак, традиционно вы проверяете dll на наличие зависимостей, используя что-то вроде Dependency Walker . Файлы .pyd - это просто переименованные файлы .dll, поэтому с этим все должно работать. Тем не менее, Dependency Walker в основном полон шума - если вы не заметите что-то действительно очевидное (и вы можете сразу проигнорировать все dll API-MS-WIN *, EXT-MS- *), то вам может быть проще включить Loader Snaps ( посмотрите эту старую, но все еще соответствующую статью MSDN ), которая, как мы надеемся, сможет сообщить вам, какой вызов loadlibrary не удался. Кроме того, вы можете использовать Process Monitor (procmon) из формы Sysinternals, чтобы увидеть, какие файлы Maya пытается загрузить при импорте модуля в скрипт. Я не могу вспомнить, порождает ли Maya отдельный процесс для запуска своих скриптов python или они выполняются в контексте основного процесса maya. Это важно, так как вы захотите отфильтровать события в procmon только для исполняемого файла maya / python, иначе они будут завалены ими.
Редактировать: Посмотрев исходный код, кажется, не так много зависимостей, кроме самих заголовков python и некоторых стандартных библиотек. Я подозреваю, что более вероятно, что это скомпилировано с другой версией набора инструментов, чем Python Maya. В интерпретаторе Python вы должны увидеть такую строку при запуске:
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:25:58) [MSC v.1500 64 bit (AMD64)] on win32
Было бы хорошо посмотреть, какой набор инструментов использовался для его компиляции (бит квадратных скобок), а затем снова построить расширение из исходного кода с помощью этого набора инструментов. Кроме того, вы можете попробовать запустить файл setup.py для этого модуля со страницы проекта GitHub , которая, если ваш компьютер настроен на возможность правильно компилировать расширения Python, будет создавать его из исходного кода. Более подробную информацию о сборке расширений c можно найти на странице Документов Python .