需要帮助下载带有PHP的NSIS Inetc插件zip


Need help downloading zip with PHP for NSIS Inetc plugin

所以我一直在尝试让NSIS的Inetc插件从以下地址下载zip文件mp3splitter20.ziphttp://www.hjhappel.de/dlmonitor/download.php?t=d&i=2,但我运气不好。我早些时候尝试了Nsisdl插件,并获得了开始下载的文件,但我一直收到以下错误

下载失败:服务器未指定内容长度

我读到使用Inetc会是一个更好的主意,因为它允许使用HTTP1.1。我尽力理解NSIS-inetc wiki页面上的文档,但我不知道如何通过HEADER合并所需的PHP命令来下载我的zip文件。现在,当我尝试使用标头时,我会得到以下错误:

下载失败:连接错误

这让我相信我犯了一个非常简单的错误。

如果能提供一些示例或适当的NSIS PHP文档,我们将不胜感激。提前感谢并为干杯

这是我正在尝试使用的代码部分。

!define file_name "mp3splitter20.zip"
!define file_size "294KB"
Section "F7immersion"
   SetOutPath $INSTDIR
   ;these files must be in the main folder
   inetc::get /HEADER 'Content-type: application/zip' 'Content-Disposition: attachment; filename="'${file_name}.'"' "Content-length: ${file_size}"  "http://www.hjhappel.de/dlmonitor/download.php?t=d&i=2" "$INSTDIR'mp3splitter20.zip" /END
   Pop $R0 ;Get the return value
   StrCmp $R0 "success" +3
   MessageBox MB_OK "Download failed: $R0"
   Quit
   nsisunz::Unzip "$INSTDIR'mp3splitter20.zip" "$INSTDIR"
   Pop $R0
   StrCmp $R0 "success" +2
   DetailPrint "$R0" ;print error message to log
   File /r *.ahk
   File /r *.txt
   File /r *.nsi
   File /r *.exe
   File /r *.ico
   File /r *.ini
SectionEnd

您不应该在请求中发送这些标头,服务器将在回复中发送这些。(请参阅HTTP标头字段列表)

要从"普通"服务器下载文件,只需要inetc::get "http://example.com/somefile.xyz" "$instdir'thefile.xyz" /END