feat: 新增离线一机一码授权系统
This commit is contained in:
@ -2996,23 +2996,49 @@ class WaterQualityGUI(QMainWindow):
|
||||
item.setForeground(QColor(ModernStylesheet.COLORS.get('text_secondary', '#666666'))) # 原始颜色
|
||||
|
||||
|
||||
# ============================================================
|
||||
# 主启动逻辑
|
||||
# ============================================================
|
||||
def main():
|
||||
"""主函数"""
|
||||
import sys
|
||||
|
||||
# 离线授权验证拦截(必须在业务窗口创建前执行)
|
||||
try:
|
||||
from src.auth.license_manager import verify_license
|
||||
from src.auth.license_dialog import LicenseDialog
|
||||
except ImportError:
|
||||
import os
|
||||
_current_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
_project_root = os.path.abspath(os.path.join(_current_dir, '..', '..'))
|
||||
if _project_root not in sys.path:
|
||||
sys.path.insert(0, _project_root)
|
||||
from src.auth.license_manager import verify_license
|
||||
from src.auth.license_dialog import LicenseDialog
|
||||
|
||||
_is_license_valid, _license_msg = verify_license()
|
||||
if not _is_license_valid:
|
||||
_license_app = QApplication(sys.argv)
|
||||
_license_app.setApplicationName("WaterQuality")
|
||||
_dialog = LicenseDialog()
|
||||
_dialog.exec_()
|
||||
_license_app.quit()
|
||||
sys.exit(0)
|
||||
|
||||
# 授权通过,正常载入主程序
|
||||
app = QApplication(sys.argv)
|
||||
|
||||
# 设置应用信息
|
||||
app.setApplicationName("Mega Water")
|
||||
app.setOrganizationName("WaterQuality")
|
||||
|
||||
# 创建主窗口
|
||||
|
||||
window = WaterQualityGUI()
|
||||
window.show()
|
||||
|
||||
|
||||
sys.exit(app.exec_())
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
#冻结,只显示1个exe
|
||||
# multiprocessing.freeze_support()
|
||||
# 必须紧跟在 if __name__ == "__main__": 下面第一行
|
||||
import multiprocessing
|
||||
multiprocessing.freeze_support()
|
||||
main()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user