在Windows中使用java 6隐藏文件夹,但失败

在Windows中使用java 6隐藏文件夹,但失败,java,Java,我在命令行中运行我的类,这没问题,但是当我将我的项目打包为Windows服务时,它失败了。有人知道原因吗? 我的服务以系统用户身份运行,tempFolder是以系统用户身份创建的。 这是我的代码,我没有得到任何异常和错误 (!tempFolder.exists()){ if(tempFolder.mkdirs()){ String operatingSystemName = System.getProperty("os.name");

我在命令行中运行我的类,这没问题,但是当我将我的项目打包为Windows服务时,它失败了。有人知道原因吗?
我的服务以系统用户身份运行,tempFolder是以系统用户身份创建的。 这是我的代码,我没有得到任何异常和错误

(!tempFolder.exists()){
            if(tempFolder.mkdirs()){
                String operatingSystemName = System.getProperty("os.name");
                if (operatingSystemName != null
                        && operatingSystemName.startsWith(WINDOWS_FAMILY)) {
                    String string = " attrib " + tempFolder.getAbsolutePath()+ " +h";
                    try {
                        Runtime.getRuntime().exec(string);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }else {
                throw new Exception("Can't create temp folder - " + tempFolder.toString());
            }

添加参数+s

String string = " attrib " + tempFolder.getAbsolutePath()+ " +s +h";
+s:用于将文件属性设置为系统文件

attrib命令的参数

+r:用于将文件属性设置为只读

-r:用于清除只读文件属性

+a:用于将文件属性设置为存档

-a:用于清除存档文件属性

+s:用于将文件属性设置为系统文件

-s:用于清除系统文件属性

+h:用于将文件属性设置为隐藏,用户不可见


-h:用于清除隐藏的文件属性。

您可能没有创建目录或更改其属性的安全权限感谢您的回复。我的服务以系统用户身份运行。您认为可以吗?不确定系统用户实际拥有哪些权限。可能取决于您尝试创建目录的位置此文件夹是由系统用户创建的。我检查了这个文件夹属性中的安全选项卡。系统中的“组或用户名:”这个文件夹我想隐藏,它不是系统文件夹。这只是生产水平。我不想让它成为系统级文件夹,只需隐藏它就可以了。顺便问一下,你的意思是系统用户可以只隐藏系统级文件夹吗?