| 1234567891011121314151617181920212223242526272829303132 |
- import os
- import platform
- import winreg
- def get_qgis_install_dir():
- # 尝试从环境变量获取
- qgis_env = os.getenv('QGIS_PREFIX_PATH')
- if qgis_env:
- return f'{qgis_env.replace("apps/qgis-ltr","")}bin'
- # 尝试从Windows注册表获取
- if platform.system() == "Windows":
- sub_key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\QGIS')
- try:
- qgis_dir, _ = winreg.QueryValueEx(sub_key, 'QGIS_PREFIX_PATH')
- return qgis_dir
- except WindowsError:
- pass
- # 常见的安装路径
- default_paths = [
- os.path.join(os.path.expanduser('~'), 'AppData\Local\QGIS\QGIS3'),
- r'C:\Program Files\QGIS 3.X',
- r'C:\Program Files (x86)\QGIS 3.X',
- ]
- for path in default_paths:
- if os.path.exists(path):
- return path
- return None
- # 使用函数
- qgis_dir = get_qgis_install_dir()
- print(f"QGIS Install Directory: {qgis_dir}")
|