; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! #define MyAppName "汉王WEBSCAN" #define MyAppVersion "4.23.16000.22238" #define MyAppSetupName "HanvonWebScan_Setup" #define MyAppDefSetupDir "HanvonWebScan" #define MyAppPublisher "汉王信息科技有限公司" [Setup] ; NOTE: The value of AppId uniquely identifies this application. ; Do not use the same AppId value in installers for other applications. ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) AppId={{0C57C0AF-8474-4F0C-A233-1251F20538DF} AppName={#MyAppName} AppVerName={#MyAppName} AppVersion={#MyAppVersion} DefaultDirName={pf}\{#MyAppDefSetupDir} DefaultGroupName={#MyAppName} VersionInfoVersion={#MyAppVersion} OutputDir=..\..\package\hanvon OutputBaseFilename={#MyAppSetupName}_{#MyAppVersion} Compression=lzma AppPublisher={#MyAppPublisher} SolidCompression=yes UninstallIconFile=uninstall.ico SetupIconFile=HanvonWebScan.ico LicenseFile=HanvonWebScan_License.txt PrivilegesRequired=admin [Languages] Name: "zn"; MessagesFile: "compiler:Languages/Chinese.isl" [Files] ; app Source: ".\HanvonWebScan.ico"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\hwusbdev.key"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\宋体.ttf"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\IsTask.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\HWWebScan.exe"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\..\..\code_app\doc\webscan\国产化设备接口函数标准0816.doc"; DestDir: "{app}\doc\"; Flags: ignoreversion Source: "..\..\..\..\code_app\test\webscan\*"; DestDir: "{app}\demo\"; Flags: ignoreversion createallsubdirs recursesubdirs Source: "..\..\x86\Release\HWBase.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\HWImgFmt.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\HWImgProc.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\OEM\hanvon\sane.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\OEM\hanvon\scanner.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\cnocr.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\doc_seg.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\ExportFile.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\FormEx.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\GetPdf.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\GetRtf.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\GetXls.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\hanwangOCRdetect.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\hasp_windows_113819.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\HwOcrSdk.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\libmupdf.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\libzip.org.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\mp30.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\ofd.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\pdflib.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\PDFParse.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\tinyxml2.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\zlib.dll"; DestDir: "{app}\"; Flags: ignoreversion Source: "..\..\x86\Release\msvcp140.dll"; DestDir: "{app}\"; Flags: ignoreversion; Source: "..\..\x86\Release\vcruntime140.dll"; DestDir: "{app}\"; Flags: ignoreversion; Source: "..\..\x86\Release\concrt140.dll"; DestDir: "{app}\"; Flags: ignoreversion; ;拷贝驱动 Source: "..\..\usb\hanvon\hanvonusbscan.inf"; DestDir: "{app}\driver\"; Flags: ignoreversion recursesubdirs; Source: "..\..\usb\hanvon\hanvonusbscan.cat"; DestDir: "{app}\driver\"; Flags: ignoreversion recursesubdirs; Source: "..\..\x86\Release\DPInst32.exe"; DestDir: "{app}\"; Flags: ignoreversion recursesubdirs; Check: not IsWin64 Source: "..\..\x64\Release\DPInst64.exe"; DestDir: "{app}\"; Flags: ignoreversion recursesubdirs; Check: IsWin64 [INI] [Icons] Name: "{group}\汉王WEBSCAN接口文档"; Filename: "{app}\doc\国产化设备接口函数标准0816.doc" Name: "{group}\汉王WEBSCAN示例网页"; Filename: "{app}\demo\demo.html" Name: "{group}\{cm:UninstallProgram, {#MyAppName}}"; Filename: "{uninstallexe}"; [Registry] Root: HKLM; Subkey: "Software\HanvonWebScan"; ValueType: string; ValueName: "AppDirectory"; ValueData: "{app}"; Flags: uninsdeletekey Root: HKLM; Subkey: "Software\HanvonWebScan"; ValueType: string; ValueName: "Application"; ValueData: "{app}\HWWebScan.exe"; Flags: uninsdeletekey Root: HKLM; Subkey: "Software\HanvonWebScan"; ValueType: string; ValueName: "AppVersion"; ValueData: "{#MyAppVersion}"; Flags: uninsdeletekey Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "HWWebScan"; ValueData: "{app}\HWWebScan.exe" [Code] // 卸载前判断进程是否在运行 function RunTaskU(FileName: string; bFullpath: Boolean): Boolean; external 'RunTask@{app}/ISTask.dll stdcall delayload uninstallonly'; function KillTaskU(ExeFileName: string): Integer; external 'KillTask@{app}/ISTask.dll stdcall delayload uninstallonly'; function InitializeUninstall(): Boolean; begin Result:= true; if RunTaskU('HWWebScan.exe', false) then begin KillTaskU('HWWebScan.exe'); Result:= true; end else Result:= true; UnloadDll(ExpandConstant('{app}/ISTask.dll')); end; function SetUninstallIcon(iconPath:string): Boolean; var InstalledVersion,SubKeyName: String; begin SubKeyName := 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{0C57C0AF-8474-4F0C-A233-1251F20538DF}_is1'; RegWriteStringValue(HKLM,SubKeyName,'DisplayIcon',iconPath); end; procedure CurPageChanged(CurPageID: Integer); begin if CurPageID = wpFinished then begin SetUninstallIcon(ExpandConstant('{app}\HanvonWebScan.ico')); end; end; procedure CurUninstallStepChanged(CurUninstallStep:TUninstallStep); begin if CurUninstallStep = usDone then begin DelTree(ExpandConstant('{app}'), True, True, True); end; end; [Run] Filename: "{app}\DPInst32"; Parameters: "/path ""{app}\driver"" /sw /se /lm /f"; Check: not IsWin64; Flags: runascurrentuser Filename: "{app}\DPInst64"; Parameters: "/path ""{app}\driver"" /sw /se /lm /f"; Check: IsWin64; Flags: runascurrentuser Filename: "{app}\HWWebScan.exe"; Description: "{cm:LaunchProgram, {#MyAppName}}"; Flags: nowait runascurrentuser