Delphi XE3:TMS软件的TWebUpdate:不替换主exe文件

时间:2013-03-30 10:57:48

标签: delphi tms

更新我的应用程序我正在使用TMS软件的TWebUpdate:

WebUpdate1.URL:='http://myserver.com/update.inf';
if WebUpdate1.NewVersionAvailable then
begin
case Application.MessageBox(PChar('The new version '+WebUpdate1.NewVersionInfo+' is available! Update it?'), 
'Updates Are Available', MB_YESNO + MB_ICONQUESTION) of
  IDYES:
    begin
     SetCurrentDir(ExtractFilePath(Application.ExeName));
     WebUpdate1.DoUpdate;
     WebUpdate1.DoRestart;
    end;
  IDNO:
    begin
      Application.Terminate;
    end;
end;

这是update.info文件:

[update]
newversion=2.1.0.37
localversion=client_app.exe
[files]
count=1
[file1]
url=http://myserver.com/client_app.exe
newversion=2.1.0.37
localversion=client_app.exe
mandatory=1
[application]
appupdate=1
silentrestart=1
appname=client_app.exe
appcomps=client_app.ex_

实际上,更新工作正常(下载exe文件并重新启动应用程序),但exe文件不会被下载的文件替换。哪里可能有问题?提前谢谢。

1 个答案:

答案 0 :(得分:0)

原来,下载的文件必须压缩为cab文件。那就是:

[update]
newversion=2.1.0.37
localversion=client_app.exe
[files]
count=1
[file1]
url=http://myserver.com/client_app.ex_
newversion=2.1.0.37
localversion=client_app.exe
mandatory=1
[application]
appupdate=1
silentrestart=1
appname=client_app.exe
appcomps=client_app.ex_

当然:

WebUpdate1.ExtractCAB:=True;