gpt4 book ai didi

Java - 获取Windows中所有用户的路径

转载 作者:行者123 更新时间:2023-11-29 09:30:46 24 4
gpt4 key购买 nike

我正在努力写入所有用户的快捷方式目录,我相信我已经成功了,但是我获取路径的方式似乎不正确。而且我不知道这是否是检查所有用户路径是否存在的正确方法,或者是否有更好的方法。这应该能够在 windows xp - windows 8 和 windows server 2000 - 2012 上工作。这是代码:

        int pathOne = 0;
int pathTwo = 0;
String allUserPath = "";

File sourceOne = new File("C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\");
if (sourceOne.exists())
{
pathOne = 1;
}

File sourceTwo = new File("C:\\Documents and Settings\\All Users\\Start Menu\\");
if (sourceTwo.exists())
{
pathTwo = 1;
}

if (pathOne == 1 && pathTwo == 0)
{
allUserPath = "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs";
}

if (pathTwo == 1 && pathOne== 0)
{
allUserPath = "C:\\Documents and Settings\\All Users\\Start Menu\\Programs";
}

更新:通过一些研究,我发现您可以执行命令行查询。

 public static final String REG_QRY_CMD="reg query ";
public static final String SHORT_CUT_REG_KEY="HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";

String str = REG_QRY_CMD+"\""+
SHORT_CUT_REG_KEY+"\""+ " /v " + "\""+ "Programs" +"\"";

现在这将使我进入当前用户的程序文件夹:示例“C:\Documents and Settings\al\Start Menu\Programs”或“E:\Documents and Settings\meg\Start Menu\Programs” 有没有办法可以将其切片?至少得到“?:\Documents and Settings\”?这样我至少可以将它添加到所有用户而不仅仅是当前用户。这样,猜测工作就会减少,而且会稍微好一些。谢谢

最佳答案

在其他语言的系统上你需要更多。

一种策略是使用当前用户的信息来获取所有用户的目录。

系统信息可以从:

System.getProperties().list(System.out);

不幸的是,只有 System.getProperty("user.home") 可能值得关注。使用该目录,您可以解释所有用户目录。

同样适用于 java.awt.Desktop,JDIC 库可能值得研究。

关于Java - 获取Windows中所有用户的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13566808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com