l gặp sự cố "ImportError: DLL load failed: %1 is not a valid Win32 application"
khi tôi cố gắng tìm hiểu Building Spatial Models in Python
trên tài liệu erdas. Đối với điều này, l m sử dụng Enthought Canopy (64-bit)
trên Pycharm
.l muốn biết làm thế nào l có thể giải quyết vấn đề này? nên l tải về phiên bản 32 bit Canopy nhưng máy tính của tôi là 64 bit, do way.l có 64 bit version of ERDAS
cài đặt trên máy của tôi và l tự hỏi liệu Erdas 32 bit
phiên bản Imagine
mô-đun có thể giải quyết vấn đề này?Tải DLL không thành công:% 1 không phải là ứng dụng Win32 hợp lệ trên Enthought
đây là mã ví dụ:
from exampleshelper import dataPath, outputPath
from imagine import modeler
m=modeler.Model()
ri = m.RasterInput(dataPath + "C:/Users/owrasa/PycharmProjects/den/data/lanier.img")
bandSelect = m.BandSelection(ri, "1:4")
sumBands = m.StackTotal(bandSelect)
ro = m.RasterOutput(sumBands, outputPath + "summing-image-layers.img")
m.Execute()
đây là thông báo lỗi toàn bộ:
C:\Users\owrasa\AppData\Local\Enthought\Canopy\User\Scripts\python.exe C:/Users/owrasa/PycharmProjects/den/layerstack.py
Using example data from C:/Users/owrasa/PycharmProjects/den\..\data\
and saving results in C:/Users/owrasa/PycharmProjects/den\..\output\
Traceback (most recent call last):
File "C:/Users/owrasa/PycharmProjects/den/layerstack.py", line 3, in <module>
from imagine import modeler
File "C:\Program Files\Intergraph\ERDAS IMAGINE 2014\usr\lib\Win32Release\python\imagine\__init__.py", line 19, in <module>
import init
File "C:\Program Files\Intergraph\ERDAS IMAGINE 2014\usr\lib\Win32Release\python\imagine\init\__init__.py", line 56, in <module>
_initToolkit();
File "C:\Program Files\Intergraph\ERDAS IMAGINE 2014\usr\lib\Win32Release\python\imagine\init\__init__.py", line 51, in _initToolkit
import _init
ImportError: DLL load failed: %1 is not a valid Win32 application.
Process finished with exit code 1
Thuật ngữ "Win32" (xem traceback của bạn) là mơ hồ (đôi khi nó được sử dụng trái ngược với 64-bit, đôi khi trái ngược với cũ hơn (16) -bit), trong trường hợp nó bao gồm cả 32-bit và 64-bit). Vì ERDAS được cài đặt trong "Program Files" thay vì trong "Program Files (X86)", có vẻ như bạn đã cài đặt 64-bit ERDAS, trong trường hợp đó vấn đề sẽ không được giải quyết bằng cách cài đặt Canopy 32-bit. –
vì vậy tôi cần mô-đun python 32 bit erdas để chạy mã mà không có lỗi, phải không? –
Xin lỗi, không, đó không phải là ý tôi. Tôi sẽ cố gắng xem xét lại điều này trong vài ngày tới. Bạn cũng có thể muốn gắn thẻ erdas cho câu hỏi này. –