有没有办法把NW.js的所有"help-files"都放在一个子目录中?



一旦我的NW.js项目完成并打包,我就得到了一个漂亮的Whatever.zip。用户打开该文件归档,找到一个名为Whatever的目录,并将其提取到桌面。然后打开dir.

在里面,他们发现了大量的文件(d3dcompiler_47.dll,nw_elf.dll,resources.pak等)和子目录(locales等),在那里的某个地方,我的Whatever.exeREADME.txt

这看起来很乱。

我希望,相反,用户打开目录,发现只有这个:

Whatever.exe
README.txt
<DIR> NWJs

那就太干净了。用户将立即看到他们应该运行的EXE,以及我制作的README.txt。如果他们非常好奇,他们可以进入NWJs目录,找到所有与我的应用程序100%无关的文件。

我知道有一个第三方的"谜";东西,把所有东西都变成一个文件。那不是我想要的。

是的,我知道我可以制作一个供人们使用的安装程序,我也这样做。这个和那个也没有关系。

有可能吗?我一直不明白他们为什么做出这样的设计选择。但是没有明显的方法(IMO)来完成这一点,因为EXE文件(重命名和图标更改的NW.exe)期望所有这些奇怪的小(和大)文件在同一个目录下。我当然希望这可以配置,而不必"构建一个自定义的nw"。(很遗憾,这是不可能发生的)。

这个设计选择是由Chromium做出的,NW.js只是继承了它。Chromium一直是为非技术人员设计的。这意味着它只能由安装程序分发,该安装程序将这些文件放在Program Files文件夹中,或者类似的地方,然后在桌面上或开始菜单上创建可执行文件的快捷方式。

如果你想这样做,有工具像NSIS, WinRAR的SFX,或Inno Setup。还有一些自动构建工具(如NW.js Builder Phoenix),尽管没有得到很好的维护,但它们可以简化安装程序的创建。

或者,如果您有更多的技术用户,您可以直接执行"解压缩/双击"接近,就像你现在做的。没有办法让支持文件与可执行文件在同一目录下。

相关内容

最新更新