如何将cx_Freeze可执行文件的.pyd和子文件夹与可执行文件分开放在单个文件夹中

时间:2017-06-25 16:23:04

标签: python cx-freeze python-3.6

我有一个用cx_Freeze构建的可执行文件,我想分发它。可执行文件可以工作,但它被埋在大量其他子文件夹和.pyd和.dll文件中的构建文件夹中,我想清理它,理想情况下只有可执行文件和另一个文件夹所有必要的文件都在哪里。

我使用的是cx_Freeze,因为据我所知,其他冰柜尚未使用3.6,这是一项要求。

我遇到了this question,详细说明了同样的问题。它的回答是说当时没有一种方法可以使用已发布的版本,但是5.x已经可用了。我还没有能够从更改日志中识别出来。

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。

该功能是针对5.x版本进行规划的,但由于内部更改,我们没有这样做。

它存在于现在未发布的版本中。我通过从its repository下载var http = require('http'); var ejs = require('ejs'); var fs = require('fs'); var request = require("request"); var temp = ""; var options = { method: 'GET', url: 'My_URL', headers: { authorization: 'Basic My_Autho' } }; request(options, function (error, response, body) { if (error) throw new Error(error); temp = body; console.log(body); }); http.createServer(function(req,res) { res.writeHead(200, {'Content-Type': 'text/html' }); fs.readFile('index.html', 'utf-8', function(err, content) { if (err) { res.end('error occurred'); return; } var renderedHtml = ejs.render(content, {temp: temp}); res.end(renderedHtml); }); }).listen(8000); 的源代码并按照说明编译并安装它来解决它。现在,可执行文件夹中只有3个DLL,其余文件位于单个cx_Freeze文件夹中,更加清晰。