检测.app和.exe文件位置的最佳方法

时间:2012-10-29 00:52:33

标签: java minecraft

我用Java编写了一个程序,可以很容易地在不同版本的Minecraft之间进行设置和切换。该计划已经完成,但我遇到了一个我无法找到解决方案的问题。我在程序中有一个按钮,允许您通过Runtime对象启动Minecraft。这在我的计算机上运行良好,因为我知道我的.app或.exe文件在哪里(取决于操作系统)。但是,我不知道该文件在其他任何人的计算机上的位置。我想到了一些解决这个问题的方法,但似乎没有办法可行。

一个想法是提示用户通过文件选择器找到文件,然后缓存该文件。这可行,但不是很优雅,特别是对于那些不具备计算机知识的用户。

我还考虑过将.app和.exe文件与我的应用程序捆绑在一起,但这会带来更多问题。首先,我不知道在我的应用程序中分发该文件对我来说是否合法。此外,它将改变我分发应用程序的方式,以包含某种设置所有内容的安装程序。

有没有人对如何处理这个问题有更好的想法?

1 个答案:

答案 0 :(得分:2)

你至少有三个我能想到的选择

  1. 您可以使用配置系统存储程序的位置,并提示用户/提供配置API以设置值。这很好,而且很简单
  2. 您可以搜索通常知道位置的位置,如果找不到,请提示用户(并希望存储结果)。这没关系,但它依赖于许多因素,包括操作系统和程序实际加载到“公共”位置并以“常见”方式命名。
  3. 搜索硬盘。这很糟糕,因为它耗费时间并且应用程序可能实际上并不存在于您正在搜索的驱动器上...搜索所有可用位置可能会导致您进入网络驱动器,这将更慢...并且如果找不到则提示用户< / LI>

    看到几乎所有解决方案都无法“提示用户”,我可能会使用1&amp; 2.允许用户指定位置,如果不是,则搜索一些常见的已知位置,如果仍然找不到,请提示用户(并希望保存该值以便重复使用)。

    IMHO