难以通过Pyxll加载Scipy-是否有人成功地通过Pyxll加载了Scipy?
题
我正在使用Python 2.6,Excel 2007 Professional和最新版本的Pyxll。将模块加载到具有
import scipy
抛出一个例外,未加载模块。有人能够在pyxll中加载Scipy吗?可能是版本控制问题吗?抛出的例外是:
2010-12-21 17:21:30,915 - ERROR : Error importing 'options': DLL load failed: A dynamic link library (DLL) initialization routine failed.
2010-12-21 17:21:30,915 - ERROR : Traceback (most recent call last):
2010-12-21 17:21:30,915 - ERROR : File "pyxll", line 402, in _open
2010-12-21 17:21:30,915 - ERROR : File "C:\Dev\libs\pyxll\examples\options.py", line 15, in <module>
2010-12-21 17:21:30,915 - ERROR : import scipy
2010-12-21 17:21:30,915 - ERROR : File "C:\Python26\lib\site-packages\scipy\__init__.py", line 78, in <module>
2010-12-21 17:21:30,915 - ERROR : from numpy import show_config as show_numpy_config
2010-12-21 17:21:30,915 - ERROR : File "C:\Python26\lib\site-packages\numpy\__init__.py", line 138, in <module>
2010-12-21 17:21:30,915 - ERROR : import add_newdocs
2010-12-21 17:21:30,915 - ERROR : File "C:\Python26\lib\site-packages\numpy\add_newdocs.py", line 9, in <module>
2010-12-21 17:21:30,930 - ERROR : from lib import add_newdoc
2010-12-21 17:21:30,930 - ERROR : File "C:\Python26\lib\site-packages\numpy\lib\__init__.py", line 4, in <module>
2010-12-21 17:21:30,930 - ERROR : from type_check import *
2010-12-21 17:21:30,930 - ERROR : File "C:\Python26\lib\site-packages\numpy\lib\type_check.py", line 8, in <module>
2010-12-21 17:21:30,930 - ERROR : import numpy.core.numeric as _nx
2010-12-21 17:21:30,930 - ERROR : File "C:\Python26\lib\site-packages\numpy\core\__init__.py", line 5, in <module>
2010-12-21 17:21:30,930 - ERROR : import multiarray
2010-12-21 17:21:30,930 - ERROR : ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.
解决方案
我怀疑这是因为您正在使用numpy的当前分布。当前版本的问题有一个问题,这意味着它不能嵌入Excel中。
为了解决此问题,您需要使用CFF资源管理器或任何其他PE编辑器从Numpy PYD文件中删除清单资源。
Ention意识到这一点,并正在研究这个问题。
您可以从Numpy网站下载的版本可以与Pyxll一起使用。
如果您还有其他问题,请随时发送电子邮件至support@pyxll.com或在PYXLL论坛上发布。
问候,
托尼
不隶属于 StackOverflow