У меня проблема с загрузкой внешней dll с использованием Python через Python для .NET. Я пробовал разные методологии после stackoverflow и тому подобного. Я постараюсь обобщить ситуацию и описать все шаги, которые я сделал.
У меня есть dll с именем, например. Test.NET.dll. Я проверил с помощью dotPeek, и я вижу, нажав на него, x64 и .NET Framework v4.5. На моем компьютере я установил .Net Framework 4.
Я также устанавливал Python для .NET разными способами. Я думаю, что лучше всего скачать .whl с этого веб-сайта ССЫЛКА. Я скачал и установил: pythonnet‑2.0.0.dev1‑cp27‑none‑win_amd64.whl. Я могу предположить, что он будет работать для .NET 4.0, поскольку требуется Microsoft .NET Framework 4.0.
После того, как я все установил, я могу выполнить следующие команды:
>>> import clr
>>> import System
>>> print System.Environmnet.Version
>>> print System.Environment.Version
4.0.30319.34209
Вроде работает. Затем я попытался загрузить свою dll, набрав следующие команды:
>>> import clr
>>> dllpath= r'C:\Program Files\API\Test.NET'
>>> clr.AddReference(dllpath)
Traceback (most recent call last):
File "<pyshell#20>", line 1, in <module>
clr.AddReference(dllpath)
FileNotFoundException: Unable to find assembly 'C:\Program Files\API\Test.NET'.
at Python.Runtime.CLRModule.AddReference(String name)
Я также пытался добавить «.dll» в конце пути, но ничего не изменилось. Затем я также пробовал различные решения, как описано в ССЫЛКА. , ССЫЛКА, ССЫЛКА и многое другое.... К сожалению, это не работает, и я получаю разные ошибки. Я знаю, что IronPython существует, но я старался не использовать его.
Спасибо за вашу помощь!