我编写了一个简单的 JavaFx 应用程序,它使用 PhantomJS 访问一系列 url,并将屏幕截图保存到同一目录中的文件夹中。例如,如果 jar/exe 位于文件夹“my-app”中,它会将屏幕截图保存到“my-app/screenshots”中。然而,在使用Inno Setup Compiler创建安装程序,在我自己的计算机上安装该应用程序,然后运行安装程序创建的版本后,它无法保存任何内容。可能是什么问题?这是创建/保存图像时我的代码的示例:
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);
感谢您提前提供的帮助
最佳答案
应用程序通常安装到 Program Files
文件中。您不能在那里写入文件(除非应用程序以提升的权限运行,但不建议这样做)。
您应该修改应用程序以将文件写入用户配置文件或可配置位置。
如果应用程序写入当前工作目录,作为快速破解,您可以修改安装程序创建的快捷方式,将工作目录设置为用户配置文件。
关于java - Inno Setup Compiler - JavaFX 应用程序不写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41400534/