使用 WiX Burn v3.7.1224,我无法通过 ExePackage 获取远程有效负载。我通常会成功使用类似的 ExePackage 元素,所以我认为问题可能与我尝试下载的特定 URL 有关。
这个特定的“exe URL”是http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe
准确地说:交互式页面位于http://code.google.com/p/tesseract-ocr/downloads/detail?name=tesseract-ocr-setup-3.02.02.exe并点击下载锚点“似乎”会导致上面列出的直接“exe URL”。我说“似乎”是因为我必须深入页面源代码才能找出最终的“exe URL”,这可能是个问题。
这是感兴趣的 WiX 片段:
<Fragment>
<util:RegistrySearch Id="TesseractLookup"
Variable="TESSERACT_REGVALUE"
Root="HKLM"
Key="SOFTWARE\Tesseract-OCR"
Value="CurrentVersion" />
<PackageGroup Id="Tesseract">
<ExePackage Compressed="no"
PerMachine="yes"
Permanent="yes"
Vital="yes"
Name="redist\tesseract-ocr-setup-3.02.02.exe"
InstallCondition="NOT TESSERACT_REGVALUE"
DetectCondition="TESSERACT_REGVALUE"
DownloadUrl="http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe">
<RemotePayload Description="Tesseract-OCR - open source OCR engine"
Hash="35C61604AAAC961C24CD28F959566B2E39244541"
ProductName="Tesseract-OCR"
Size="13525781"
Version="3.02.02.0" />
</ExePackage>
</PackageGroup>
</Fragment>
我在几秒钟内就成功使用了我尝试过的浏览器(Firefox 和 Internet Explorer)以及一个基本的“wget”命令。但是Burn失败了。所有这些都提供了相同的“exe URL”。为了以防万一,我什至尝试禁用防火墙和防病毒软件,但无济于事。
你对可能发生的事情有任何暗示吗?
以下是安装日志中的相关行:
[27F8:1FE8][2013-03-07T08:36:46]w343: Prompt for source of package: tesseract_ocr_setup_3.02.02.exe, payload: tesseract_ocr_setup_3.02.02.exe, path: D:\soft\audiveris\dist\redist\tesseract-ocr-setup-3.02.02.exe
[27F8:1FE8][2013-03-07T08:36:46]i338: Acquiring package: tesseract_ocr_setup_3.02.02.exe, payload: tesseract_ocr_setup_3.02.02.exe, download from: http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe
[27F8:1FE8][2013-03-07T08:36:47]e000: Error 0x80070002: Failed to send request to URL: http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe
[27F8:1FE8][2013-03-07T08:36:47]e000: Error 0x80070002: Failed to connect to URL: http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe
[27F8:1FE8][2013-03-07T08:36:47]e000: Error 0x80070002: Failed to get size and time for URL: http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe
[27F8:1FE8][2013-03-07T08:36:47]e000: Error 0x80070002: Failed attempt to download URL: 'http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe' to: 'C:\Users\herve\AppData\Local\Temp\{7715fbb6-5bc5-442f-86a0-655fa082bd7d}\tesseract_ocr_setup_3.02.02.exe'
[27F8:1FE8][2013-03-07T08:36:47]e000: Error 0x80070002: Failed to acquire payload from: 'http://tesseract-ocr.googlecode.com/files/tesseract-ocr-setup-3.02.02.exe' to working path: 'C:\Users\herve\AppData\Local\Temp\{7715fbb6-5bc5-442f-86a0-655fa082bd7d}\tesseract_ocr_setup_3.02.02.exe'