我制作了一个小型 Java 应用程序,将目录从 CD 复制到 HD。我使用 Windows Vista 制作了这个程序,它可以工作,但是当我在 Windows 7 中运行它时,它失败了。
主要问题是需要在 Program Files 文件夹中创建一个文件夹。
我使用了 DestinationFolder.mkdirs(),但创建它失败
这是java代码:
public void Install_App()
{
File srcFolder = new File(System.getProperty("user.dir") + "\\WINDOWS");
File destFolder = new File("C:\\Program Files\\test1\\test2\\");
if (srcFolder.exists())
{
try{
if(!destFolder.exists())
{
destFolder.mkdirs();
}
copyFolder(srcFolder,destFolder,1);
}catch(IOException e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, e.toString());
error=true;
System.exit(0);
}
} else
{
JOptionPane.showMessageDialog(null, "Error. Source Directory doesn't exist.");
error=true;
};
}
...然后有一个 copyfolder 函数可以复制带有 inputstream 和 outputstream 的文件。
问题是该文件夹从未创建。我的登录用户是管理员。正如我所说,它在 Vista 中工作。
请问你能帮帮我吗?
谢谢。
问题是我在 java 中创建了这个应用程序以在 Windows 和 Mac 中运行它。在 Windows 中,它应该使用 autorun.inf 自动运行,如下所示:
[autorun]
OPEN=java_app.bat
那么这个蝙蝠将运行这个:
@echo off
start javaw -jar "java_app.jar"
EXIT
那么如何修改它以自动以管理员身份运行呢?这个 Java 应用程序的主要思想是简化安装和使用外部应用程序的过程,无论您使用哪种操作系统。如果我必须要求用户以管理员身份运行它,它会失去它的意义(使用简单)。