mirror of http://192.168.10.5:8099/sane/release
185 lines
9.6 KiB
Plaintext
185 lines
9.6 KiB
Plaintext
; Script generated by the Inno Setup Script Wizard.
|
|
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
|
|
#define MyAppName "立思辰扫描仪软件"
|
|
#define MyAppVersion "4.1034.2022.8011"
|
|
#define MyAppSetupName "LanxumScan_App_Setup"
|
|
#define MyAppDefSetupDir "LanxumScan"
|
|
#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={{F2890F43-A51C-4379-BB79-992616B1D6BD}
|
|
AppName={#MyAppName}
|
|
AppVerName={#MyAppName}
|
|
AppVersion={#MyAppVersion}
|
|
DefaultDirName={pf}\{#MyAppDefSetupDir}
|
|
DefaultGroupName={#MyAppName}
|
|
VersionInfoVersion={#MyAppVersion}
|
|
OutputDir=..\..\package\lanxum
|
|
OutputBaseFilename={#MyAppSetupName}_{#MyAppVersion}
|
|
Compression=lzma
|
|
AppPublisher={#MyAppPublisher}
|
|
SolidCompression=yes
|
|
UninstallIconFile=uninstall.ico
|
|
SetupIconFile=LanxumScan_App.ico
|
|
LicenseFile=LanxumScan_App_License.txt
|
|
AlwaysShowComponentsList=true
|
|
|
|
[Languages]
|
|
Name: "zn"; MessagesFile: "compiler:Languages/Chinese.isl"
|
|
|
|
[Components]
|
|
Name: "Upgrade"; Description: "在线升级功能" ; Types: Full
|
|
Name: "Twain8200"; Description: "LANXUMSCAN G42S TWAIN" ; Types: Full
|
|
Name: "Twain8420"; Description: "LANXUMSCAN G42S TWAIN" ; Types: Full
|
|
Name: "Twain8429"; Description: "LANXUMSCAN G52S TWAIN" ; Types: Full
|
|
Name: "Twain8520"; Description: "LANXUMSCAN G62S TWAIN" ; Types: Full
|
|
Name: "Twain8529"; Description: "LANXUMSCAN G73S TWAIN" ; Types: Full
|
|
Name: "Twain8620"; Description: "LANXUMSCAN G42S TWAIN" ; Types: Full
|
|
Name: "Twain8629"; Description: "LANXUMSCAN G52S TWAIN" ; Types: Full
|
|
Name: "Twain8730"; Description: "LANXUMSCAN G62S TWAIN" ; Types: Full
|
|
Name: "Twain8739"; Description: "LANXUMSCAN G73S TWAIN" ; Types: Full
|
|
|
|
[Files]
|
|
|
|
; app
|
|
Source: ".\LanxumScan_App.ico"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\..\..\code_app\doc\scanner\LanxumScan_App_Help_manual.pdf"; DestDir: "{app}\"; Flags: ignoreversion
|
|
|
|
Source: "..\..\x86\Release\hwusbdev.key"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\IsTask.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
|
|
Source: "..\..\x86\Qt\iconengines\*"; DestDir: "{app}\iconengines\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Qt\imageformats\*"; DestDir: "{app}\imageformats\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Qt\platforms\*"; DestDir: "{app}\platforms\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Qt\styles\*"; DestDir: "{app}\styles\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Qt\translations\*"; DestDir: "{app}\translations\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Qt\*.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
|
|
Source: "..\..\x86\Release\LanxumScan.exe"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Release\LSCUpgradeApp.exe"; DestDir: "{app}\"; Flags: ignoreversion; Components: Upgrade;
|
|
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\LSCBase.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Release\LSCImgFmt.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Release\LSCImgProc.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Release\LSCVersion.dll"; DestDir: "{app}\"; Flags: ignoreversion; Components: Upgrade;
|
|
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\msvcp140.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Release\vcruntime140.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\Release\zlib.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
|
|
Source: "..\..\x86\OEM\lanxum\sane.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\OEM\lanxum\scanner.dll"; DestDir: "{app}\"; Flags: ignoreversion
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8200.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8200;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8420.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8420;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8429.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8429;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8520.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8520;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8529.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8529;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8620.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8620;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8629.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8629;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8730.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8730;
|
|
Source: "..\..\x86\OEM\lanxum\lanxumtwain8739.ds"; DestDir: "{win}\twain_32\"; Flags: ignoreversion; Components: Twain8739;
|
|
|
|
;拷贝驱动
|
|
Source: "..\..\x86\Release\scannerusb.inf"; DestDir: "{app}\driver\"; Flags: ignoreversion recursesubdirs;
|
|
Source: "..\..\x86\Release\scannerusb.cat"; DestDir: "{app}\driver\"; Flags: ignoreversion recursesubdirs;
|
|
Source: "..\driver\x86\DPInst32.exe"; DestDir: "{app}\"; Flags: ignoreversion recursesubdirs; Check: not IsWin64
|
|
Source: "..\driver\x64\DPInst64.exe"; DestDir: "{app}\"; Flags: ignoreversion recursesubdirs; Check: IsWin64
|
|
|
|
|
|
[INI]
|
|
|
|
[Icons]
|
|
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\LanxumScan.exe"
|
|
Name: "{group}\{#MyAppName}"; Filename: "{app}\LanxumScan.exe"
|
|
Name: "{group}\立思辰扫描仪软件帮助文档"; Filename: "{app}\LanxumScan_App_Help_manual.pdf"
|
|
Name: "{group}\{cm:UninstallProgram, {#MyAppName}}"; Filename: "{uninstallexe}";
|
|
|
|
[Registry]
|
|
Root: HKLM; Subkey: "Software\LanxumScan"; ValueType: string; ValueName: "AppDirectory"; ValueData: "{app}"; Flags: uninsdeletekey
|
|
Root: HKLM; Subkey: "Software\LanxumScan"; ValueType: string; ValueName: "Application"; ValueData: "{app}\LanxumScan.exe"; Flags: uninsdeletekey
|
|
Root: HKLM; Subkey: "Software\LanxumScan"; ValueType: string; ValueName: "AppVersion"; ValueData: "{#MyAppVersion}"; Flags: uninsdeletekey
|
|
|
|
[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 SetUninstallIcon(iconPath:string): Boolean;
|
|
var
|
|
InstalledVersion,SubKeyName: String;
|
|
begin
|
|
if (IsWin64()) then begin
|
|
SubKeyName := 'Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{F2890F43-A51C-4379-BB79-992616B1D6BD}_is1';
|
|
RegWriteStringValue(HKLM64,SubKeyName,'DisplayIcon',iconPath);
|
|
end else begin
|
|
SubKeyName := 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{F2890F43-A51C-4379-BB79-992616B1D6BD}_is1';
|
|
RegWriteStringValue(HKLM,SubKeyName,'DisplayIcon',iconPath);
|
|
end;
|
|
end;
|
|
|
|
function InitializeUninstall(): Boolean;
|
|
var
|
|
ErrorCode: Integer;
|
|
bRes: Boolean;
|
|
begin
|
|
if not ShellExec('', ExpandConstant('{app}\LSCUpgradeApp.exe'), '-type=postuninstallinfo -appName=Scanner -desc=uninstall', '', SW_HIDE, ewWaitUntilTerminated, ErrorCode) then
|
|
begin
|
|
end;
|
|
Result := true;
|
|
if RunTaskU('LanxumScan.exe', false) then
|
|
begin
|
|
KillTaskU('LanxumScan.exe');
|
|
Result:= true;
|
|
end
|
|
else
|
|
Result:= true;
|
|
UnloadDll(ExpandConstant('{app}/ISTask.dll'));
|
|
end;
|
|
|
|
procedure CurPageChanged(CurPageID: Integer);
|
|
begin
|
|
if CurPageID = wpFinished then
|
|
begin
|
|
SetUninstallIcon(ExpandConstant('{app}\LanxumScan_App.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
|
|
Filename: "{app}\DPInst64"; Parameters: "/path ""{app}\driver"" /sw /se /lm /f"; Check: IsWin64
|
|
Filename: "{app}\LSCUpgradeApp.exe"; Parameters:"-type=postinstallinfo -appName=Scanner -desc=install/upgrade"; Components: Upgrade;
|
|
Filename: "{app}\LanxumScan.exe"; Description: "{cm:LaunchProgram, {#MyAppName}}"; Flags: postinstall nowait skipifsilent
|
|
|
|
[UninstallRun]
|
|
; 卸载二代证驱动
|
|
;Filename: "{app}\DPInst32"; Parameters: "/u ""{app}\driver\scannerusb.inf"" /q /d"; Check: not IsWin64
|
|
;Filename: "{app}\DPInst64"; Parameters: "/u ""{app}\driver\scannerusb.inf"" /q /d"; Check: IsWin64 |