如何使用 SharePoint 站点 (365) 作为 Inno Setup 文件的来源?

How can I use a SharePoint Site (365) as the source for Inno Setup files?

我想知道在安装过程中我可以通过什么方式使用 SharePoint 站点下载文件。

为此,我下载了 Inno Download Plugin 并尝试使用下一个代码进行一些操作:

#include <idp.iss>

[Files]
Source: "{tmp}\FiletoDownload.txt"; DestDir: "{app}"; Flags: external; ExternalSize: 1048576

[Code]

function InitializeSetup(): Boolean;
var
  WinHttpReq: Variant;
begin
  Log('InitializeSetup');

  Result := True;

  try
    WinHttpReq := CreateOleObject('WinHttp.WinHttpRequest.5.1');
    WinHttpReq.Open('GET', 'https://mysite.sharepoint.com', false);
    WinHttpReq.SetCredentials('myuser@mycompany.onmicrosoft.com', 'pass',1);    
    WinHttpReq.Send();
  except
  end;
end;

procedure InitializeWizard();
begin
  idpAddFileSize('https://mysite.sharepoint.com/Documents/Shared%20Documents/FiletoDownload.txt', ExpandConstant('{tmp}\FiletoDownload.txt.txt'), 1048576);
  idpDownloadAfter(wpReady);
end;

但是我编译的时候出现这个错误:

谁能帮我解释一下我的错误在哪里?

注意:我读过这篇文章 post,但据我所知,这适用于其他 SharePoint 版本。

感谢提前!

您似乎假设使用 WinHttp.WinHttpRequest 调用 SetCredentials 您使用 "Inno Download Plugin".

验证文件下载

但这是两个完全不同的不相关的 HTTP 会话。这样不行。

要使用 "Inno Download Plugin" 进行身份验证,请使用 idpSetLogin 函数。

另见


还有你link的问题,How can I use a Sharepoint server as the Source for Inno Setup files?,与你的问题没有任何关系。这是关于为 Inno Setup 编译器下载源文件,而不是为了安装。