У меня есть драйвер, написанный на C#, .NET 4.7.0 и собранный как DLL. У меня нет исходников от этого драйвера. Я хочу использовать этот драйвер в приложении Python.
Я завернул некоторые функции из драйвера в метод другого проекта C#. Затем я встроил его в DLL. Я использовал RGiesecke.DllExport, чтобы сделать один метод доступным в python. Когда я вызываю этот метод из python, используя ctypes, я получаю WinError -532462766 Ошибка Windows 0xe0434352.
Если я исключаю код драйвера и оставляю в экспортируемом методе только код-оболочку, все работает нормально.
Не могли бы вы дать мне несколько советов, как заставить это работать или помочь мне найти лучшее решение? Переход с Python на IronPython здесь невозможен.
Спасибо.
Проблема возникает, когда я выполняю код из обернутой библиотеки в приложении Python. Я проверил несколько вещей, и похоже, что библиотека по какой-то причине не была загружена. Средство просмотра событий пусто. Я не нашел там ошибок.
ПРИЧИНА ПРОБЛЕМЫ: Python не запускал оболочку из каталога, в котором она хранилась вместе с драйвером. Это вызвало проблему с загрузкой драйвера.
Первая проблема заключается в отладке ошибки, которую вы получаете. «WinError -532462766» и «Ошибка Windows 0xe0434352» крайне бесполезны. Поток Этот может помочь вам отладить основную ошибку.