2016-12-30 185 views
0

我已经写了一个简单了JavaFx的应用程序,访问了一系列使用PhantomJS的网址和截图保存到一个文件夹在同一个目录中的文件。例如,如果jar/exe文件位于“my-app”文件夹中,它会将截图保存为“my-app/screenshots”。但是,在使用Inno Setup Compiler创建安装程序,在我自己的计算机上安装应用程序,然后运行由安装程序创建的版本之后,它无法保存任何内容。这个问题会是什么?这是我的代码看起来创建时像/保存图像的例子:Inno Setup的编译器 - 的JavaFX应用程序不写

byte[] bytes = phantomDriver.getScreenshotAs(OutputType.BYTES); 
File outputFile = new File(outputFolder, String.format("/Home Page/Home_Page-%s.jpg", timestamp)); 
outputFile.getParentFile().mkdirs(); 
FileUtils.writeByteArrayToFile(outputFile, bytes); 

感谢所有帮助提前

回答

1

应用程序通常安装到Program Files文件。你不能在那里写文件(除非应用程序以提升的权限运行,不建议这么做)。

您应修改将文件写入到用户配置文件或可配置位置的应用程序。

如果应用程序写入到当前工作目录,作为一个快速的黑客,你可以修改快捷方式,由安装程序创建,设置工作目录到用户配置文件。