Skip to content

安装与部署 ​

安装由 StudioInstaller.exe 完成。它做两件事:把运行时文件部署到 Studio 的 Managed 目录,然后用 Cecil 改写 Studio.Startup.dll 注入引导入口。

动手之前

  • 先完全退出 Studio 2.0,否则 Studio.Startup.dll 被占用,改写会失败。
  • 安装目标在 Program Files 下,需要以管理员身份运行。
  • 必须使用完整的发行包(含 deps/、bin/、StudioInstaller.exe),缺文件安装器会直接报错中止。

安装步骤 ​

  1. 退出 Studio 2.0。

  2. 把发行包解压到任意目录(例如 D:\StudioModFramework)。

  3. 右键 StudioInstaller.exe → 以管理员身份运行。

  4. 在命令行菜单中输入编号选择自动识别的 Studio,或输入 M 手动指定目录或 Studio.exe 路径(直接回车可打开文件选择窗口)。观察控制台输出,出现下面的字样即安装成功:

    text
    ==================================================
      Installation SUCCESSFUL!
      StudioModLoader is now hooked into Studio 2.0.
      Press [F10] in Studio to open the in-game overlay.
    ==================================================
  5. 启动 Studio 2.0,按 F10 呼出控制台,能看到「框架信息」即部署正常。

安装器做了什么 ​

① 定位 Studio 安装目录

检测 C:\Program Files\Studio 2.0 和 C:\Program Files (x86)\Studio 2.0,在命令行菜单中列出找到的目录供你选择。即使检测到了 Studio,也可以输入 M 手动指定其他安装位置;输入 0 取消。所选目录必须同时包含:

  • Studio.exe
  • Studio_Data\Managed\Studio.Startup.dll

② 部署运行时文件到 Studio_Data\Managed\

文件来源
StudioSDK.dll、StudioModLoader.dllbin/
0Harmony.dll、MonoMod.RuntimeDetour.dll、MonoMod.Utils.dlldeps/
Mono.Cecil.dll、Mono.Cecil.Rocks.dlldeps/

同时把 WebView2 宿主部署到 Managed\WebView2\,把自动更新宿主部署到 Managed\Updater\。

③ 创建 Mods 目录(已存在则跳过)。

④ 备份原文件

首次安装时把 Studio.Startup.dll 复制一份为 Studio.Startup.dll.orig.bak。已存在备份时不会覆盖——这保证无论重装多少次,卸载时还原的都是最初的官方文件。

⑤ IL 注入

在 Studio.Startup.Services.InitializationSequenceService.Initialize() 的首条指令前插入对 StudioModLoader.Bootstrapper.Initialize() 的调用。Studio 启动时该调用最先执行,Loader 由此接管引导。

命令行用法 ​

安装器同时提供命令行开关,方便脚本化部署:

cmd
StudioInstaller.exe                :: 安装(默认行为,等同 --install)
StudioInstaller.exe --install      :: 安装
StudioInstaller.exe --status       :: 输出 Installed 或 NotInstalled
StudioInstaller.exe --uninstall    :: 卸载并还原
StudioInstaller.exe --install --studio "D:\Studio 2.0"  :: 指定安装目录,跳过选择菜单
StudioInstaller.exe --status --studio "D:\Studio 2.0\Studio.exe"
退出码含义
0成功(--status 时表示已安装)
1失败(--status 时表示未安装)

交互运行时会显示目录选择菜单;--studio 可用于安装、状态查询和卸载,直接指定目标并跳过菜单。重定向输入或输出时不会显示菜单,未指定 --studio 时使用第一个自动识别的目录。

双击运行(不带参数)时,程序在结束前会停住并提示 Press Enter to close this window...,方便你看完输出;带参数或重定向调用时不会在结束后等待按键。

卸载 ​

cmd
StudioInstaller.exe --uninstall

卸载流程:

  1. 用 Studio.Startup.dll.orig.bak 覆盖回 Studio.Startup.dll,然后删除备份文件。
  2. 删除部署进 Managed 的 Loader / SDK / Harmony / Cecil 等程序集。
  3. 清空并删除 Managed\WebView2\ 与 Managed\Updater\ 目录。

卸载不会删除你的 Mod

Mods 目录中的插件不会被卸载程序触碰。要彻底清理,手动删除该目录下的内容即可。

手动安装(进阶) ​

不用安装器时,按同样的顺序手工操作也可以,但必须自己完成 IL 注入——这是 Loader 能生效的前提,单纯把 DLL 拷进 Managed 目录不会起任何作用。

排查 ​

现象原因与处理
[Error] Managed folder not found选择的目录不是 Studio 安装根目录,检查是否包含 Studio_Data\Managed
Framework update host is missing发行包不完整,重新获取完整包
安装成功但按 F10 无反应Studio 没完全退出就装了,重新运行安装器覆盖一次
--status 返回 NotInstalledStudioModLoader.dll 或 Studio.Startup.dll.orig.bak 缺失

为 BrickLink Studio 2.0 打造的第三方 Mod 加载框架 · 与 BrickLink / LEGO 官方无关联