Используйте C # DLL в Python - PullRequest
1 голос
/ 20 мая 2019

У меня есть драйвер, который написан на C #, .NET 4.7.0 и построен как DLL. У меня нет источников из этого драйвера. Я хочу использовать этот драйвер в приложении Python.

Я включил некоторые функции из драйвера в метод другого проекта C #. Затем я встроил его в DLL. Я использовал RGiesecke.DllExport, чтобы сделать один метод доступным в python. Когда я вызываю этот метод из python, используя ctypes, я получаю WinError -532462766 Ошибка Windows 0xe0434352 .

Если я исключаю код драйвера и сохраняю только код-обертку в экспортированном методе, все работает нормально.

Не могли бы вы дать мне несколько советов, как заставить это работать или помочь мне найти лучшее решение? Переход с python на IronPython здесь невозможен.

Спасибо.

1 Ответ

0 голосов
/ 21 мая 2019

ПРИЧИНА ПРОБЛЕМЫ: Python не запускал оболочку из каталога, где он хранился вместе с драйвером.Это вызвало проблему с загрузкой драйвера.

...