Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 24, 2011 17:20:10

Tavork
От:
Зарегистрирован: 2010-07-23
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование двух похожих dll

def import_dylib_sim(self, dylib_path): 
if not sys.modules.has_key('sim'):
import sys
oldpath = sys.path
sys.path = [dylib_path] + oldpath
import sim
assert sys.modules.has_key('sim')
worked = True
else:
worked = True
return worked
Есть оригинальная библиотека sim.dll. И есть модифицированный вариант этой библиотеки (все функции те же) также sim.dll. Если модифицированный sim.dll просто переименовать в sim2.dll, а в программном коде выше заменить sim на sim2, то импорт невозможен: “import sim2” вылетает с ошибкой.
Вопрос! Это как-то связано с тем, что в самой библиотеке тоже прописано имя sim или ошибка в чем-то другом? Если в самой библиотеке, то где там имя прописывается?

ошибка: dynamic module does not define init function (initsim2)



Отредактировано (Март 7, 2011 21:51:50)

Офлайн

#2 Фев. 24, 2011 17:33:41

Soteric
От:
Зарегистрирован: 2010-09-19
Сообщения: 352
Репутация: +  20  -
Профиль   Отправить e-mail  

Использование двух похожих dll

Какая ошибка?



Офлайн

#3 Март 7, 2011 21:59:52

Tavork
От:
Зарегистрирован: 2010-07-23
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование двух похожих dll

Столкнулся с похожей проблемой, программа nanoengineer-1, собранная py2exe, перестала работать на моем компьютере, подозреваю что из-за смены драйверов nvidia.
Программа стала ругаться на Numeric библиотеку multiarray.pyd (ошибка при import: параметр задан не верно).
Может быть новые драйверы видеокарты создали похожие библиотеки, не пойму



Офлайн

#4 Март 7, 2011 22:57:40

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Использование двух похожих dll

Конечно драйвера видеокарты! А еще попробуйте припомнить - вы мебель в последнее время не переставляли?



Офлайн

#5 Март 8, 2011 08:56:32

Tavork
От:
Зарегистрирован: 2010-07-23
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование двух похожих dll

Ладно иронизировать, лучше бы подсказали из-за чего это могло произойти. Вчера все работало, потом переставил дрова, еще 1 SP поставился на win7 и сегодня прога ругается на multiarray. Полностью удалял, заново устанавливал - не помогает.



Офлайн

#6 Март 8, 2011 12:49:15

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Использование двух похожих dll

По фотографии - не лечим.



Офлайн

#7 Март 8, 2011 16:38:11

Tavork
От:
Зарегистрирован: 2010-07-23
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование двух похожих dll

Ну и плохо.
А я выяснил на виртуальных машинах, что Numeric-23.8.win32-py2.4.exe, используемый в коде программы, и вправду не совместим с SP1 на Windows 7. А именно с библиотекой multiarray.pyd. Интересно как бы это исправить в самой винде, ну а пока попробую пересобрать прогу с более новыми версиями numeric



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version