Download Inno安装程序映像下载
我正在使用Inno安装编译器(Pascal脚本)。Download Inno安装程序映像下载,download,inno-setup,pascal,Download,Inno Setup,Pascal,我正在使用Inno安装编译器(Pascal脚本)。 我的表单有一个图像对象(TBitmapImage),我想提供一个从web URL获得的动态图像。是否可以在Inno Setup scripting中以静默方式下载图像(或其他类型的文件)?Inno Setup没有任何内置功能,但是,您可以使用为您执行此操作的批处理文件来执行此操作 1) 下载命令行URL资源下载程序,如- 关于如何使用它的一些提示- 2) 将其打包到安装程序中 3) 创建一个批处理文件,该文件调用url2file.exe并将
我的表单有一个图像对象(TBitmapImage),我想提供一个从web URL获得的动态图像。是否可以在Inno Setup scripting中以静默方式下载图像(或其他类型的文件)?Inno Setup没有任何内置功能,但是,您可以使用为您执行此操作的批处理文件来执行此操作 1) 下载命令行URL资源下载程序,如- 关于如何使用它的一些提示- 2) 将其打包到安装程序中 3) 创建一个批处理文件,该文件调用url2file.exe并将图像提取到应用程序目录中 4) 在Inno setup installer脚本的initialize setup命令中调用此批处理文件 5) 无论你想在哪里使用该图像 ps-如果在设置中使用图像,请检查是否允许加载不同的图像。。我对此不确定。
如果您有任何其他问题,请与我联系。Inno安装程序没有任何内置功能,但是,您可以使用为您执行此操作的批处理文件来执行此操作 1) 下载命令行URL资源下载程序,如- 关于如何使用它的一些提示- 2) 将其打包到安装程序中 3) 创建一个批处理文件,该文件调用url2file.exe并将图像提取到应用程序目录中 4) 在Inno setup installer脚本的initialize setup命令中调用此批处理文件 5) 无论你想在哪里使用该图像 ps-如果在设置中使用图像,请检查是否允许加载不同的图像。。我对此不确定。
如果您有任何其他问题,请告诉我我将编写一个从Internet下载文件的Win32小程序,例如
program dwnld;
uses
SysUtils, Windows, WinInet;
const
PARAM_USER_AGENT = 1;
PARAM_URL = 2;
PARAM_FILE_NAME = 3;
function DownloadFile(const UserAgent, URL, FileName: string): boolean;
const
BUF_SIZE = 4096;
var
hInet, hURL: HINTERNET;
f: file;
buf: PByte;
amtc: cardinal;
amti: integer;
begin
result := false;
hInet := InternetOpen(PChar(UserAgent), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
try
hURL := InternetOpenUrl(hInet, PChar(URL), nil, 0, 0, 0);
try
GetMem(buf, BUF_SIZE);
try
FileMode := fmOpenWrite;
AssignFile(f, FileName);
try
Rewrite(f, 1);
repeat
InternetReadFile(hURL, buf, BUF_SIZE, amtc);
BlockWrite(f, buf^, amtc, amti);
until amtc = 0;
result := true;
finally
CloseFile(f);
end;
finally
FreeMem(buf);
end;
finally
InternetCloseHandle(hURL);
end;
finally
InternetCloseHandle(hInet);
end;
end;
begin
ExitCode := 0;
if ParamCount < 3 then
begin
MessageBox(0,
PChar(Format('%s: This program requires three command-line arguments.',
[ExtractFileName(ParamStr(0))])),
PChar(ExtractFileName(ParamStr(0))),
MB_ICONERROR);
Exit;
end;
if FileExists(ParamStr(PARAM_FILE_NAME)) then
DeleteFile(PChar(ParamStr(PARAM_FILE_NAME)));
if DownloadFile(ParamStr(PARAM_USER_AGENT), ParamStr(PARAM_URL),
ParamStr(PARAM_FILE_NAME)) then
ExitCode := 1;
end.
然而,不幸的是,我不知道在运行时如何更改
向导图像文件
。我会编写一个从Internet下载文件的Win32小程序,例如
program dwnld;
uses
SysUtils, Windows, WinInet;
const
PARAM_USER_AGENT = 1;
PARAM_URL = 2;
PARAM_FILE_NAME = 3;
function DownloadFile(const UserAgent, URL, FileName: string): boolean;
const
BUF_SIZE = 4096;
var
hInet, hURL: HINTERNET;
f: file;
buf: PByte;
amtc: cardinal;
amti: integer;
begin
result := false;
hInet := InternetOpen(PChar(UserAgent), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
try
hURL := InternetOpenUrl(hInet, PChar(URL), nil, 0, 0, 0);
try
GetMem(buf, BUF_SIZE);
try
FileMode := fmOpenWrite;
AssignFile(f, FileName);
try
Rewrite(f, 1);
repeat
InternetReadFile(hURL, buf, BUF_SIZE, amtc);
BlockWrite(f, buf^, amtc, amti);
until amtc = 0;
result := true;
finally
CloseFile(f);
end;
finally
FreeMem(buf);
end;
finally
InternetCloseHandle(hURL);
end;
finally
InternetCloseHandle(hInet);
end;
end;
begin
ExitCode := 0;
if ParamCount < 3 then
begin
MessageBox(0,
PChar(Format('%s: This program requires three command-line arguments.',
[ExtractFileName(ParamStr(0))])),
PChar(ExtractFileName(ParamStr(0))),
MB_ICONERROR);
Exit;
end;
if FileExists(ParamStr(PARAM_FILE_NAME)) then
DeleteFile(PChar(ParamStr(PARAM_FILE_NAME)));
if DownloadFile(ParamStr(PARAM_USER_AGENT), ParamStr(PARAM_URL),
ParamStr(PARAM_FILE_NAME)) then
ExitCode := 1;
end.
然而,不幸的是,我知道没有任何方法可以在运行期间更改
WizardImageFile
。实际上可以使用从web下载几乎任何内容。实际上可以使用从web下载几乎任何内容