Files
LanMountainDesktop/docs/archive/HOST_DISCOVERY.md
2026-06-08 03:54:33 +08:00

1.8 KiB
Raw Permalink Blame History

主程序发现配置指南

Launcher 支持灵活的主程序发现机制,可以通过多种方式配置主程序路径。

发现优先级

  1. 环境变量 (LMD_HOST_PATH) - 最高优先级
  2. 配置文件 (host-discovery.json)
  3. 开发模式保存的路径 - 通过调试窗口选择
  4. 部署目录 (app-*)
  5. 开发路径 - 自动搜索解决方案中的 bin 目录
  6. 额外配置路径 - 自定义搜索路径
  7. 递归搜索 - 如果启用

配置方式

1. 环境变量

设置 LMD_HOST_PATH 环境变量指向主程序可执行文件:

$env:LMD_HOST_PATH = "C:\MyApp\LanMountainDesktop.exe"

2. 配置文件

在应用根目录创建 host-discovery.json

{
  "HostPath": "C:\\Custom\\Path\\LanMountainDesktop.exe",
  "AdditionalPaths": [
    "${AppRoot}/custom",
    "${UserProfile}/dev/build",
    "C:/Program Files/LanMountainDesktop/*"
  ]
}

3. 开发模式

在错误窗口中按 Ctrl+Shift+D 打开调试窗口,启用开发模式并选择自定义路径。路径会自动保存,下次启动时优先使用。

路径变量

配置文件支持以下变量:

  • ${AppRoot} - 应用根目录
  • ${BaseDirectory} - Launcher 所在目录
  • ${UserProfile} - 用户主目录
  • ${LocalAppData} - 本地应用数据目录

通配符支持

AdditionalPaths 支持通配符:

{
  "AdditionalPaths": [
    "C:/Builds/*/LanMountainDesktop.exe",
    "${AppRoot}/versions/*/app.exe"
  ]
}

递归搜索

启用递归搜索可以自动在子目录中查找主程序:

var options = new HostDiscoveryOptions
{
    RecursiveSearch = true,
    MaxRecursionDepth = 3
};

注意:递归搜索可能影响启动性能,建议仅在必要时启用。