2011-06-05 155 views
0

有没有办法以编程方式发送(单个文件)从NSIS脚本压缩(压缩)文件夹?从NSIS发送到压缩(压缩)文件夹

在我的搜索,我发现参考使用打开这样的文件夹:

rundll32.exe zipfldr.dll,RouteTheCall %filename% 

但我一直没能找到相反。

我也发现references通过写一个完全成熟的程序在C++,VB,C#或VJ#中创建一个压缩(或压缩)文件夹,但这不是我所感兴趣的。来自NSIS脚本。

这可能吗?

回答

1

虽然它is possible使用CompressedFolder功能创建zip文件和NSIS可以调用本机API和COM接口,但我不能说这是一个好主意。有些人不喜欢CompressedFolder功能并禁用它。在你的安装程序中包含命令行压缩工具并调用它可能会更好。

所以要回答这个问题;是的,这是可能的,但从NSIS调用COM是一个很大的痛苦,代码将在CompressedFolder功能被禁用的机器上中断。

+0

感谢您的澄清。我现在确信在你的安装程序中包含命令行压缩工具并调用它更好。你知道这种工具与NSIS具有相同的“专有友好”许可吗? (也就是说,我可以*合法*将其包含在我的安装程序中) – WinWin 2011-06-05 15:41:38