3

このコードを実行するだけで機能するかどうかはわかりませんが、ここでは次のようになります。

public void actionPerformed(ActionEvent e) {
        try
        {
        Runtime rt = Runtime.getRuntime();
        Process p = rt.exec("c:\\Users\\Toby\\AppData\\Roaming\\.minecraft\\minecraft.exe");
        }

        catch(Exception a)
        {

        }
    }

これはボタンにリンクされており、Minecraftランチャーを起動します。友達に渡したい場合は、ユーザー「Toby」を検索せず、代わりにホームフォルダーを検索するために何をする必要がありますか?混乱してすみません!

4

3 に答える 3

5

user.home物件をお探しだと思います。ここで利用可能なプロパティのリストがあります:http://www.mindspring.com/~mgrand/java-system-properties.htm

したがって、コードは次のように変更されます。

Process p = rt.exec(System.getProperty("user.home") + \\AppData\\Roaming\\.minecraft\\minecraft.exe");
于 2012-09-08T18:48:10.153 に答える
4

他のバージョンのWindowsとの一貫性を維持したい場合は、ローミングフォルダーが古いバージョンのWindowsに存在しないためSystem.getenv("APPDATA")、追加する代わりに使用することをお勧めします。System.getProperty("user.home")

したがって、コードは次のように変更されます。

Process p = rt.exec(System.getenv("APPDATA") + ".minecraft\\minecraft.exe")
于 2012-09-08T19:06:37.940 に答える
0

試すSystem.getProperty("user.home")

String mhome = System.getProperty("user.home"))+"";

    public void actionPerformed(ActionEvent e) {
            try
            {
            Runtime rt = Runtime.getRuntime();
            Process p = rt.exec(mhome+"\\AppData\\Roaming\\.minecraft\\minecraft.exe");
            }

            catch(Exception a)
            {

            }
        }
于 2012-09-08T18:49:12.993 に答える