[Qgis-developer] help. PyTables does not work in Qgis python plugin

zhangliye chinazhangly at 126.com
Fri Jan 4 22:36:51 PST 2013


Dear all,
I am developing a Qgis python plugin using PyTables 2.4. There is an error when starting Qgis main application. I checked the error message and found that there is an error when call 'import tables'  because some dll cannot be loaded.  
But when I run the python not in Qgis environment, PyTables works correctly.
I also open the Qgis console window and input 'import tables'. The error message is the same, saying that some dll cannot be loaded.


when I start Qgis with my own Python plugin, the error message is as following:


Couldn't load plugin UAV due an error when calling its classFactory() method

Traceback (most recent call last):
  File "C:/PROGRA~2/Quantum GIS Wroclaw/apps/qgis/./python\qgis\utils.py", line 138, in startPlugin
    plugins[packageName] = package.classFactory(iface)
  File "C:\PROGRA~2\Quantum GIS Wroclaw\apps\qgis\python\plugins\UAV\__init__.py", line 24, in classFactory
    from UAV import UAV
  File "C:/PROGRA~2/Quantum GIS Wroclaw/apps/qgis/./python\qgis\utils.py", line 283, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "C:\PROGRA~2\Quantum GIS Wroclaw\apps\qgis\python\plugins\UAV\UAV\UAV.py", line 18, in
    from newprojectdlg import NewPorjectDlg
  File "C:/PROGRA~2/Quantum GIS Wroclaw/apps/qgis/./python\qgis\utils.py", line 283, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "C:\PROGRA~2\Quantum GIS Wroclaw\apps\qgis\python\plugins\UAV\UAV\gui\newprojectdlg.py", line 6, in
    import uav_tables
  File "C:/PROGRA~2/Quantum GIS Wroclaw/apps/qgis/./python\qgis\utils.py", line 283, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "C:\PROGRA~2\Quantum GIS Wroclaw\apps\qgis\python\plugins\UAV\UAV\data_table\uav_tables.py", line 3, in
    from tables import *
  File "C:/PROGRA~2/Quantum GIS Wroclaw/apps/qgis/./python\qgis\utils.py", line 283, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "C:\PROGRA~2\Quantum GIS Wroclaw\apps\Python27\lib\site-packages\tables\__init__.py", line 69, in
    from tables.utilsExtension import getPyTablesVersion, getHDF5Version
  File "C:/PROGRA~2/Quantum GIS Wroclaw/apps/qgis/./python\qgis\utils.py", line 283, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
ImportError: DLL load failed: The specified procedure could not be found.


I have reinstall the pytable and also try the version 2.3, 2.2 and 2.1.  I also add the tables package path to the system 'path'  environment variable. The errors are still the same.  PyTables works correctly in standard python environment, but failed in Qgis python environment.  
I am not familiar with Qgis embedded python.Could any one help me on this.


--


Sincerely: Liye Zhang

University of Florida, Gainesville, Florida, USA
School of Traffic and Transportation, Tongji University, China.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20130105/b03701e2/attachment-0001.html>


More information about the Qgis-developer mailing list