![](/img/trans.png)
[英]ImportError: DLL load failed while importing QtCore, QtGUI
[英]How do I fix (ImportError: DLL load failed while importing QtCore) for a standalone python application in VS Code using qgis.core?
我正在使用的項目工具Python 3.9.5 (tags/v3.9.5:0a7dcbd, May 3 2021, 17:27:52) [MSC v.1928 64 bit (AMD64)] 我正在使用 QGIS 3.28.2 IDE : VS Code 我按照 locate press 上的指南進行操作。
我想要獲取大型正射影像 (>10GB),壓縮它們 (<250MB),然后使用 QGIS GUI 顯示它們,最后使用一些遮罩和提取工具來處理它們。
我需要的是有人告訴我如何設置我的環境和 IDE 來導入 QGIS 庫。
錯誤代碼
PS C:\Users\pkmos\OneDrive\Desktop\DIYGIS> & "C:/Program Files/QGIS 3.28.0/bin/python.exe" c:/Users/pkmos/OneDrive/Desktop/DIYGIS/appl.py
Traceback (most recent call last):
File "c:\Users\pkmos\OneDrive\Desktop\DIYGIS\appl.py", line 2, in <module>
import qgis
File "C:\Program Files\QGIS 3.28.0\apps\qgis\python\qgis\__init__.py", line 78, in <module>
from qgis.PyQt import QtCore
File "C:\Program Files\QGIS 3.28.0\apps\qgis\python\qgis\PyQt\QtCore.py", line 24, in <module>
from PyQt5.QtCore import *
ImportError: DLL load failed while importing QtCore: The specified procedure could not be found.
劇本
import sys
import qgis
from PyQt5.QtWidgets import QApplication, QWidget, QLabel
def window():
app = QApplication(sys.argv)
widget = QWidget()
textLabel = QLabel(widget)
textLabel.setText("Hello World!")
textLabel.move(110,85)
widget.setGeometry(50,50,320,200)
widget.setWindowTitle("PyQt5 Example")
widget.show()
sys.exit(app.exec_())
if __name__ == '__main__':
window()
環境
PATH=$PATH;"C:\OSGeo4W\bin";"C:\OSGeo4W\apps\qgis";"C:\OSGeo4W\apps\qgis\bin";"C:\OSGeo4W\apps\Qt5\bin";"C:\OSGeo4W\apps\Python39\Scripts";"C:\OSGeo4W\apps\Qt5\bin"
PYTHONPATH="C:\OSGeo4W\apps\qgis\python"
PYTHONHOME="C:\OSGeo4W\apps\Python39"
工作區
{
"folders": [
{
"name": "app",
"path": "C:/Users/pkmos/OneDrive/Desktop/DIYGIS"
}
]
}
進展我已經使用 GDAL 庫計算出壓縮。 但是 QGIS GUI 不會在我的獨立應用程序中打開。 我嘗試將許多不同的文件夾添加到系統環境變量中。 我將張貼一些圖片向您展示我們正在處理的內容。 我已經檢查以確保我使用的是正確版本的 QGIS 和 Python。
我需要的幫助我的技能很少:(。如果有人能給我指出正確的方向來設置我的 IDE VS 代碼以導入 qgis.core 庫,我想我可以構建程序的 rest。我如何創建制作使用 QGIS GUI 的獨立 python 應用程序的正確環境?
好吧,我可能在發帖之前獨自解決了這個問題 5 個小時,然后我想我剛剛找到了答案。
我用這段代碼創建了一個 bat 文件並運行它,然后打開我原來的 appl.py 文件並運行它,它打開了帶有 hello world 的 GUI window。
@echo off
path %PATH%;C:\Program Files\QGIS 3.28.0\bin
path %PATH%;C:\Program Files\QGIS 3.28.0\apps\grass\grass78\lib
path %PATH%;C:\Program Files\QGIS 3.28.0\apps\Qt5\bin
path %PATH%;C:\Program Files\QGIS 3.28.0\apps\Python39\Scripts
set PYTHONPATH=%PYTHONPATH%;C:\Program Files\QGIS 3.28.0\apps\qgis\python
set PYTHONHOME=C:\Program Files\QGIS 3.28.0\apps\Python39
start "VisualStudioCode for QGIS" /B "C:\Users\pkmos\AppData\Local\Programs\Microsoft VS Code\Code.exe" %*
因此,如果有人仍然想發表評論並告訴我我做錯的所有事情以及我如何不知道環境變量是什么,請這樣做。
我希望這能幫助像我這樣的其他菜鳥!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.