【发布时间】:2015-06-24 12:53:44
【问题描述】:
当您右键单击文件时,您可以选择“使用...打开”任何程序/可执行文件的选项,这会启动该程序并自动在该程序中打开文件。我想每个人都知道这一点。
现在我正在统一构建一个游戏(脚本在 c# 中),我希望我完成的构建支持此功能,以便我的用户/玩家可以右键单击,比如说,保存游戏文件,选择打开方式,然后然后选择我的游戏可执行文件。然后游戏应该会启动并加载保存的游戏。
如何实现此功能?当从文件系统使用此选项时,后台会发生什么,我如何在游戏中处理它?
我不是在问如何实际加载游戏(无论如何每个游戏都不同),我只需要知道我如何“捕捉”用户使用我的 game.exe 打开文件的情况。
【问题讨论】:
-
操作系统所做的只是运行您的可执行文件,第一个参数是您单击的文件的路径/名称。在游戏的启动例程中,您需要查看是否有任何参数传入 (
Environment.GetCommandLineArgs()) 并获取文件名并进行处理。 -
所以基本上我应该有一个空场景来进行准备工作,包括检查命令行参数?它只是将整个路径作为纯文本传递吗?
-
我不确定从 Unity 的角度来看,但这就是基础。是的,整个路径作为纯文本传递。您可以通过创建一个新的控制台应用程序(在 MonoDevelop 中,而不是 Unity 中)并执行上述函数的 Console.WriteLine 来轻松测试这一点。
-
我会这样做并尝试一下,谢谢 :) 继续发布这个作为答案,以便我接受!
-
如果没有人给你一个具体的答案,我会在今天下午发布关于如何在 Unity 中执行此操作的答案。谢谢。