运行 Buffer(.exe) 无需在 Nodejs 中写入文件

Run Buffer(.exe) without writing files in Nodejs

假设我在使用 C 语言创建的终端中有一个控制台应用程序,大喊 "Hello world!" 该程序称为 hello.exe。 我上传 hello.exe 到静态服务器。

现在我可以通过在 chrome 中输入以下地址来下载文件。 http://localhost:8080/hello.exe

或者我可以使用 Nodejs 中的 http 方法获取 Blob 对象。 有没有办法直接运行这个获取到的Blob对象而不用做文件呢?并获取字符串 Hello world!

没有找到类似的主题。 我是否需要创建并 运行 文件并立即删除它? 我想要的是文件 运行 而不是保留在我的电脑上。

我不知道有什么方法可以 运行 一个 .exe 文件而不先把它放在磁盘上。您基本上需要编写自己的 exe 加载器,该加载器从内存而不是磁盘工作,这将是不小的努力。

请记住,如果客户端自动 运行 从 URL 中获取一些可执行文件,例如 http://somedomain.com/hello.exe,而无需任何用户干预,则可能是一个非常危险的客户端,因为流氓网络服务器可以向它发送任何造成各种伤害(病毒、勒索软件等)的任意可执行文件。

Do I need to create and run the file and erase it right away?

是的,程序完成后擦掉它运行宁。

I want is for the files to run and not remain on my PC.

你只需要在它有 运行 之后的某个时候清理它。如果你有一个程序化的客户端,把文件放在你的应用程序可以定期清理的应用程序级临时目录应该没什么大不了的。如果这是来自浏览器,那么用户可以控制文件在磁盘上的位置,并且用户可以控制文件何时被删除 - 您无法在网页中自行管理。

Or I can get a Blob object using the http method in Nodejs.

您可以下载一个二进制文件。不确定你在这里问的到底是什么。