Inno Setup; the script is generated using the Inno Setup script wizard .; Refer to the documentation for details on creating the inno setup script file! # Define MyAppName "Business Standard client tool" # define MyAppVerName "Business Standard client tool 1.1.7" # define MyAppVer "1.1.7" # define MyAppPublisher "xxxxx Limited" # define MyAppURL "http://www.smartaudit.com.cn /" # define MyAppExeName "bjqd.exe "; delete the old version [Code] procedure InitializeWizard (); var ResultStr: String; ResultCode: Integer; begin {find the software installation information, check whether SOFTWARE has been installed.} if RegQueryStringValue (HKLM, 'Software \ Microsoft \ Windows \ CurrentVersion \ Uninstall \{ 24965BF4-BCCE-4776-A7EF-B9F758003242} _ is1 ', 'uninstallstring', ResultStr) then if MsgBox ('you have installed this software and are about to uninstall the old version! ', MbInformation, MB_YESNO) = IDYES then begin ResultStr: = RemoveQuotes (ResultStr); Exec (ResultStr, '','', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode); end; // check whether the system supports msxml6. If not, install msxml6_86.msiprocedure deinitializeSetup (); var ResultCode: Integer; begin // check whether msxml6 is installed on the installation system, if no, run the installation package msxml6_x86.msi if not FileExists (ExpandConstant ('{sys} \ msxml6.dll') then ShellExec ('open', ExpandConstant ('{% TEMP} \ msxml6_x86.msi '), '','', SW_SHOW, ewNoWait, ResultCode); end; [Setup]; note: the value of AppId is the only identifier that identifies this program .; Do not use the same AppId value in other programs .; (Click "tool-> Generate GUID" in the compiler to generate a new GUID) appId = {signature} AppName = {# MyAppName} AppVerName = {# MyAppVerName} AppPublisher = {# signature} AppPublisherURL ={# MyAppURL} AppSupportURL ={# MyAppURL} AppUpdatesURL = {# myAppURL }; defaultDirName = {pf }\{# MyAppName} DefaultDirName = {reg: HKLM \ Software \ Microsoft \ windows \ CurrentVersion \ Uninstall \ Business Standard client tool _ is1, Inno Setup: app Path | {pf} \ Business Standard client tool} DefaultGroupName = {# MyAppName}; display update information; InfoBeforeFile =. \ bin \ what's new.txt OutputBaseFilename = "xxxx Limited" VersionInfoDescription = "Business Standard client tool" VersionInfoVersion ={# MyAppVer} Compression = lzmaso#compression = yesAppMutex = "Business Standard Client tool "ChangesAssociations = yes [ages] Name: "default"; MessagesFile: "compiler: Default. isl "[Tasks]; desktop shortcut Name:" desktopicon "; Description:" {cm: CreateDesktopIcon} "; GroupDescription:" {cm: AdditionalIcons} "; Flags: unchecked; quick Start Name: "quicklaunchicon"; Description: "{cm: CreateQuickLaunchIcon}"; GroupDescription: "{cm: AdditionalIcons}"; Flags: unchecked [Files]; the installation source file is in the "Business Standard client tool" under the same directory of the installation script. The main program is WebBadgeSource :". \ bin \ bjqd.exe "; DestDir:" {app} "; Flags: ignoreversionSource :". \ bin \ * "; DestDir:" {app} "; Flags: ignoreversion recursesubdirs createallsubdirsSource :". \ msxml6.0 \ msxml6_x86.msi "; DestDir:" {% TEMP} "; Flags: ignoreversion; Note: Do not use" Flags: ignoreversion "[Icons] Name: "{group }\{# MyAppName}"; Filename: "{app }\{# MyAppExeName}" Name: "{group }\{ cm: UninstallProgram, {# MyAppName }}"; Filename: "{uninstallexe}" Name: "{commondesktop }\{# MyAppName}"; Filename: "{app }\{# MyAppExeName }"; tasks: Define topiconname: "{userappdata} \ Microsoft \ Internet Explorer \ Quick Launch \ # MyAppName}"; Filename: "{app }\{# MyAppExeName}"; Tasks: quicklaunchicon [Registry]; registration file type Root: HKCR; Subkey :". tbsj "; ValueType: string; ValueName:" "; ValueData:" bidding data. tbsj "; registration file type description Root: HKCR; Subkey:" bidding data. tbsj "; ValueType: string; ValueName:" "; ValueData:" bidding data file "; registration file icon Root: HKCR; Subkey:" bidding data. tbsj \ DefaultIcon "; ValueType: string; ValueName:" "; ValueData:" {app }\{# MyAppExeName}, 0 "; open the file Root: HKCR in resource manager; Subkey: "bidding data. tbsj \ Shell \ Open "; ValueType: string; ValueName:" "; ValueData:" & Open "; the file is associated with the custom program Root: HKCR; Subkey:" bidding data. tbsj \ Shell \ Open \ Command "; ValueType: string; ValueName:" "; ValueData: "{app }\{# MyAppExeName}" % 1 "; registration file type Root: HKCR; Subkey :". zbsj "; ValueType: string; ValueName:" "; ValueData:" bidding data. zbsj "; registration file type description Root: HKCR; Subkey:" bidding data. zbsj "; ValueType: string; ValueName:" "; ValueData:" bidding data file "; registration file icon Root: HKCR; Subkey:" bidding data. zbsj \ DefaultIcon "; ValueType: string; ValueName:" "; ValueData:" {app }\{# MyAppExeName}, 0 "; open the file Root: HKCR in resource manager; Subkey: "bidding data. zbsj \ Shell \ Open "; ValueType: string; ValueName:" "; ValueData:" & Open "; Association of files with custom programs Root: HKCR; Subkey:" bidding data. zbsj \ Shell \ Open \ Command "; ValueType: string; ValueName:" "; ValueData: "{app }\{# MyAppExeName}" % 1 "[Run] Filename:" {app }\{# MyAppExeName} "; Description: "{cm: LaunchProgram, {# StringChange (MyAppName," & "," & ") }}"; Flags: nowait postinstall skipifsilent; Filename: "{sys} \ regsvr32.exe"; Parameters: "/s xxx. ocx "[UninstallDelete] Type: filesandordirs; Name:" {app }"