初始化项目:添加Proxmox GUI管理平台
This commit is contained in:
48
proxmox_gui.py
Normal file
48
proxmox_gui.py
Normal file
@@ -0,0 +1,48 @@
|
||||
import sys
|
||||
import subprocess
|
||||
import importlib
|
||||
|
||||
REQUIRED_PACKAGES = ['PySide6', 'proxmoxer']
|
||||
|
||||
def check_and_install_packages():
|
||||
missing_packages = []
|
||||
for package in REQUIRED_PACKAGES:
|
||||
try:
|
||||
importlib.import_module(package.replace('-', '_'))
|
||||
except ImportError:
|
||||
missing_packages.append(package)
|
||||
|
||||
if missing_packages:
|
||||
print(f"缺少必要的第三方库: {', '.join(missing_packages)}")
|
||||
print("正在尝试自动安装...")
|
||||
try:
|
||||
subprocess.check_call([sys.executable, '-m', 'pip', 'install'] + missing_packages)
|
||||
print("安装完成!")
|
||||
return True
|
||||
except subprocess.CalledProcessError as e:
|
||||
print(f"自动安装失败: {e}")
|
||||
print(f"请手动运行: pip install {' '.join(missing_packages)}")
|
||||
return False
|
||||
return True
|
||||
|
||||
def main():
|
||||
if not check_and_install_packages():
|
||||
sys.exit(1)
|
||||
|
||||
try:
|
||||
from PySide6.QtWidgets import QApplication
|
||||
from main_window import MainWindow
|
||||
|
||||
app = QApplication(sys.argv)
|
||||
app.setStyle('Fusion')
|
||||
|
||||
window = MainWindow()
|
||||
window.show()
|
||||
|
||||
sys.exit(app.exec())
|
||||
except Exception as e:
|
||||
print(f"启动应用时发生错误: {e}")
|
||||
sys.exit(1)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
Reference in New Issue
Block a user