ImportError: нет модуля с именем wpf (только в среде Revit) - пользовательский интерфейс
Я могу сделать простой рабочий интерфейс на VS, запущенный с помощью интерпретатора ipy, но когда я пытаюсь запустить его в среде Revit (оболочка или макрос revit python), я получаю следующую ошибку: ImportError: Нет модуля с именем wpf
wpf - это встроенный модуль, поэтому я не думаю, что я забыл какую-либо ссылку или pythonpath.
Я проверил оба sys.version (идея из поста на stackru): импорт sys печать sys.version
и получил тот же результат на revitpythonshell и консоли Ironpython: 2.7.4 (IronPython 2.7.4 (2.7.0.40) в.NET 4.0.30319.18444 (64-разрядная версия)) un2.7.4 (IronPython 2.7.4 (2.7.0.40) в.NET 4.0.30319.18444 (64-разрядная версия))
Любая идея?
1 ответ
Интересно... это может быть связано с путями поиска? Я попытался сделать это в консоли Ironpython:
import wpf
wpf.__file__
но не получил результата, поэтому я проверил файловую систему на наличие других мест, откуда мог прийти модуль. Итак, я сделал это:
- Добавьте путь поиска в: "C:\Program Files (x86)\IronPython 2.7\Platforms\Net40" (или где бы то ни было в вашей системе)
Затем сделайте:
импорт clr clr.AddReference('IronPython.Wpf') импорт wpf
На моей машине это работает. Конечно, это означает, что вам нужно установить IronPython в вашей системе - RevitPythonShell поставляется с версией IronPython, но содержит только основные библиотеки.