You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

制作FNF模组时,如何在不使用OS模块的情况下通过Lua打开程序?

在Psych引擎中无需OS模块打开外部程序的方法

利用Love2D内置的love.system.execute(优先推荐)

Psych引擎基于Love2D框架,若未被开发者禁用love.system模块,可直接使用其execute方法调用系统命令来打开程序:

  • Windows系统:使用start命令,比如打开记事本:
    love.system.execute("start notepad.exe")
    
    打开带空格路径的程序需注意格式:
    love.system.execute('start "" "C:\\Program Files\\SomeApp\\target.exe"')
    
    (空引号用于规避路径含空格时的命令解析错误)
  • macOS系统:使用open命令:
    love.system.execute("open /Applications/TextEdit.app")
    
  • Linux系统:使用xdg-open(适配多数桌面环境):
    love.system.execute("xdg-open /usr/bin/firefox")
    

借助Psych引擎的内置扩展或自定义绑定

如果love.system.execute也被限制,可尝试:

  • 检查Psych引擎官方模组文档或社区开源示例,部分开发者会通过自定义C绑定提供外部程序调用接口,这类接口通常不会依赖禁用的OS模块。
  • 若具备源码修改能力,可自行给引擎添加自定义Lua绑定,直接调用系统底层API打开程序,但需注意重编译引擎的操作复杂度,以及遵守Psych引擎的开源协议。

注意事项

  • 不同系统的路径格式差异较大,建议做跨系统兼容处理,避免模组在特定平台失效。
  • 部分系统会弹出权限提示,需在模组说明中告知用户相关风险。
  • 禁止调用恶意程序,遵守模组开发的合规性要求。

内容的提问来源于stack exchange,提问作者Coolboy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 21:27:28