InnoSetupを使用してアプリケーションを配布しています。Inno Scriptで特定の条件をチェックインし、必要に応じてインターネットからファイルをダウンロードしてインストールすることは可能ですか。
質問する
19992 次
4 に答える
16
MitrichSoftwareによるInnoダウンロードプラグイン。
- これはInnoSetupスクリプトおよびDLLであり、インストールの一部としてファイルをダウンロードできます。
- FTP、HTTP、HTTPSをサポートしています。
- これは、InnoToolsDownloaderの一種のドロップイン代替品です。必要な変更はわずかです。
- それはまともなダウンロード表示とHTTPSとミラーのサポートをもたらします。
例:
#include <idp.iss>
[Files]
Source: "{tmp}\file.zip"; DestDir: "{app}"; Flags: external; ExternalSize: 1048576
[Code]
procedure InitializeWizard();
begin
idpAddFileSize('http://127.0.0.1/file.zip', ExpandConstant('{tmp}\file.zip'), 1048576);
idpDownloadAfter(wpReady);
end.
于 2014-03-28T13:45:08.527 に答える
11
はい、 InnoTools Downloaderと呼ばれるライブラリがあり、これをほぼ実行するサンプルがあります。それらは、通常のInnoコードを使用して必要なものに条件付けできます。
于 2011-07-31T23:00:46.737 に答える
11
Inno Setup 6.1には、ダウンロードのサポートが組み込まれています。サードパーティのソリューションはもう必要ありません。
Examples\CodeDownloadFiles.iss
InnoSetupインストールフォルダを確認してください。
例の重要な部分は次のとおりです。
[Files]
; These files will be downloaded
Source: "{tmp}\innosetup-latest.exe"; DestDir: "{app}"; Flags: external
Source: "{tmp}\ISCrypt.dll"; DestDir: "{app}"; Flags: external
[Code]
var
DownloadPage: TDownloadWizardPage;
function OnDownloadProgress(const Url, FileName: String; const Progress, ProgressMax: Int64): Boolean;
begin
if Progress = ProgressMax then
Log(Format('Successfully downloaded file to {tmp}: %s', [FileName]));
Result := True;
end;
procedure InitializeWizard;
begin
DownloadPage := CreateDownloadPage(SetupMessage(msgWizardPreparing), SetupMessage(msgPreparingDesc), @OnDownloadProgress);
end;
function NextButtonClick(CurPageID: Integer): Boolean;
begin
if CurPageID = wpReady then begin
DownloadPage.Clear;
DownloadPage.Add('https://jrsoftware.org/download.php/is.exe', 'innosetup-latest.exe', '');
DownloadPage.Add('https://jrsoftware.org/download.php/iscrypt.dll', 'ISCrypt.dll', '2f6294f9aa09f59a574b5dcd33be54e16b39377984f3d5658cda44950fa0f8fc');
DownloadPage.Show;
try
try
DownloadPage.Download;
Result := True;
except
SuppressibleMsgBox(AddPeriod(GetExceptionMessage), mbCriticalError, MB_OK, IDOK);
Result := False;
end;
finally
DownloadPage.Hide;
end;
end else
Result := True;
end;
于 2021-02-08T11:09:04.760 に答える
1
Innoサードパーティにあるのは、スコープとスタイルがInnoダウンロードプラグインのDWinsHsと非常に似ているものです。表示するにはブロックを解除
する
必要がある、簡単で直感的なchmファイルに含まれています。
于 2017-06-22T07:31:33.787 に答える