У меня есть этот код, который копирует исполняемый файл в массив байтов.java-исполнение во время выполнения exe-оболочки в байтовом массиве
//winmine.exe
Path path = Paths.get("winmine.exe");
byte[] bin = Files.readAllBytes(path);
Я хочу выполнить динамически массив без использования файла. К примеру мне нужно что-то вроде этого:
Runtime app = Runtime.getRuntime();
String currentDir = new File(".").getAbsolutePath();
Process p = app.exec_WRAP_BINARY(bin); //Not exixts
Целью этого является запретить пользователю доступ к файлу winmine.exe
Update: Я уверен, что это должно быть возможно каким-то образом. Если мы считаем, что это выполнение: во-первых, он читает файл, а затем полностью загружает его в память ... Я не вижу, потому что он не может сделать это отдельно.
Что именно вы пытаетесь достичь, это то, что делает * Цель этого - запретить пользователю доступ к файлу winmine.exe * означает, получить доступ к нему, потому что я понимаю, что вы просто пытаетесь выполнить файл .exe, почему вам нужно, чтобы это был массив байтов? – Ordiel
Я хочу распространять PDF-файлы без того, что пользователь может открыть его напрямую. – josepmra
Для открытия файлов есть [Desktop.open (Файл)] (http://docs.oracle.com/javase/7/docs/api/java/awt/Desktop.html#open (java.io.File)). Теперь, где ваш PDF? – Raffaele