我想在Windows上执行内存中的程序。我不想将文件写入磁盘。我只想传入一个字节数组(这是我想要执行的程序)作为参数。
我不熟练编写本机代码来执行此操作。同样,这应该是Windows原生的。
我想在内存中执行的程序不是Java程序。它是一个可执行文件(.exe)!可执行文件应在IN MEMORY中读取和运行,而不是通过 Runtime.getRuntime()。exec(“example.exe”);
答案 0 :(得分:2)
我还不能评论,否则我会。你应该能够在这里找到一些有用的信息,人们试图用C ++解决同样的问题。祈祷告诉你,你是在尝试编写跨平台的程序,还是只编写Windows?您使用“.exe”表示仅限Windows。
CreateProcess from memory buffer
理论上,只要您没有尝试构建这个跨平台,理论上您就可以使用Windows API调用来完成这项工作。