Explorar o código

增加获取本机特征码脚本,方便部署

longjoedyy hai 1 mes
pai
achega
dfd6d6a890
Modificáronse 6 ficheiros con 36 adicións e 2 borrados
  1. 0 0
      core/document_processor/__init__.py
  2. 30 1
      cythonize.py
  3. 4 0
      get_device_id.py
  4. 1 0
      setup.py
  5. 0 0
      utils/__init__.py
  6. 1 1
      utils/registration.py

+ 0 - 0
core/document_processor/__init__.py


+ 30 - 1
cythonize.py

@@ -150,6 +150,7 @@ def create_deployment():
     # 复制必要文件
     essential_files = [
         "app.py",
+        "get_device_id.py",
         ".env.example",
         "requirements.txt",
         ".registration.example",
@@ -186,13 +187,41 @@ def create_deployment():
     # 创建启动脚本
     create_start_scripts(deploy_dir)
 
-    # 创建 Windows 服务脚本(新增)
+    # 创建 Windows 服务脚本,获取当前设备ID脚本
     if sys.platform == "win32":
         create_windows_service_scripts(deploy_dir)
+        create_get_device_id_script(deploy_dir)
 
     print(f"✅ 部署包: {deploy_dir}")
 
 
+def create_get_device_id_script(deploy_dir):
+    """创建获取设备ID脚本"""
+    print("  创建获取设备ID脚本...")
+    bat_content = """@echo off
+    chcp 65001 >nul
+    echo === LongjoeAgent ===
+    echo.
+
+    REM 检查Python
+    python --version >nul 2>&1
+    if errorlevel 1 (
+        echo 错误: 未找到Python
+        pause
+        exit /b 1
+    )
+
+    REM 获取当前设备ID
+    echo 获取当前设备ID...
+    python get_device_id.py
+
+    pause
+    """
+
+    bat_file = deploy_dir / "get_device_id.bat"
+    bat_file.write_text(bat_content, encoding="utf-8")
+
+
 def create_start_scripts(deploy_dir):
     """创建启动脚本"""
 

+ 4 - 0
get_device_id.py

@@ -0,0 +1,4 @@
+from utils.device_id import get_device_id
+
+current_device_id = get_device_id()
+print("当前设备ID:", current_device_id)

+ 1 - 0
setup.py

@@ -14,6 +14,7 @@ COMPILED_DIR = current_dir / "build" / "compiled"
 # 定义要排除的文件
 EXCLUDE_FILES = {
     "app.py",  # 不编译主应用文件
+    "get_device_id.py",  # 不编译设备ID获取文件
     "setup.py",  # 不编译本文件
     "cythonize.py",  # 不编译辅助脚本
     "check_deploy.py",  # 不编译部署检查

+ 0 - 0
utils/__init__.py


+ 1 - 1
utils/registration.py

@@ -212,7 +212,7 @@ def validate_registration(
     if not registration_code:
         return (
             False,
-            "未找到注册码。请设置REGISTRATION_CODE环境变量或创建注册文件。",
+            "未找到注册码。本机特征码为: {current_device_id},申请注册并设置REGISTRATION_CODE环境变量或创建注册文件。",
             None,
         )