release/win/setup/scannerlib/MicrotekScannerLib_Setup.iss

152 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 "中晶SCANNERLIB"
#define MyAppVersion GetFileVersion('..\..\x64\OEM\microtek\sane.dll')
#define MyAppSetupName "MicrotekScannerLib_Setup"
#define MyAppDefSetupDir "MicrotekScannerLib"
#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={{B4804954-7D15-4197-8B72-021F82E90071}
AppName={#MyAppName}
AppVerName={#MyAppName}
AppVersion={#MyAppVersion}
DefaultDirName={pf}\{#MyAppDefSetupDir}
DefaultGroupName={#MyAppName}
VersionInfoVersion={#MyAppVersion}
OutputDir=..\..\package
OutputBaseFilename={#MyAppSetupName}_{#MyAppVersion}
Compression=lzma
AppPublisher={#MyAppPublisher}
SolidCompression=yes
UninstallIconFile=uninstall.ico
SetupIconFile=MicrotekScannerLib.ico
LicenseFile=MicrotekScannerLib_License.txt
PrivilegesRequired=admin
DisableWelcomePage=no
[Languages]
Name: "zn"; MessagesFile: "compiler:Languages/ChineseSimp.isl"
[Files]
; app
Source: ".\MicrotekScannerLib.ico"; DestDir: "{app}\"; Flags: ignoreversion
Source: "..\..\..\..\code_app\doc\scannerlib\新版SDK接口说明.pdf"; DestDir: "{app}\doc\"; Flags: ignoreversion
Source: "..\..\..\..\code_app\test\scannerlib\microtek\*"; DestDir: "{app}\demo\"; Flags: ignoreversion createallsubdirs recursesubdirs
Source: "..\..\..\..\sdk\include\scannerlib\*"; DestDir: "{app}\include\"; Flags: ignoreversion
Source: "..\..\..\..\sdk\lib\win\x86\Release\ZJScannerLib.lib"; DestDir: "{app}\lib\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\tessdata\*"; DestDir: "{app}\bin\x86\tessdata\"; Flags: ignoreversion createallsubdirs recursesubdirs
Source: "..\..\x86\Release\hwusbdev.key"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\ZJBase.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\ZJImgFmt.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\ZJImgProc.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\ZJScannerLib.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\OEM\microtek\sane.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\OEM\microtek\scanner.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\OEM\microtek\lang.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion;
Source: "..\..\..\lang\*"; DestDir: "{app}\bin\x86\lang\"; Flags: ignoreversion;
Source: "..\..\x86\Release\cnocr.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\doc_seg.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\ExportFile.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\FormEx.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\GetPdf.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\GetRtf.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\GetXls.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\hanwangOCRdetect.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\hasp_windows_113819.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\HwOcrSdk.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\libmupdf.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\libzip.org.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\mp30.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\ofd.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\pdflib.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\PDFParse.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\tinyxml2.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\zlib.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion
Source: "..\..\x86\Release\msvcp140.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion;
Source: "..\..\x86\Release\vcruntime140.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion;
Source: "..\..\x86\Release\concrt140.dll"; DestDir: "{app}\bin\x86\"; Flags: ignoreversion;
Source: "..\..\..\..\sdk\lib\win\x64\Release\ZJScannerLib.lib"; DestDir: "{app}\lib\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\tessdata\*"; DestDir: "{app}\bin\x64\tessdata\"; Flags: ignoreversion createallsubdirs recursesubdirs; Check: IsWin64
Source: "..\..\x64\Release\hwusbdev.key"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\ZJBase.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\ZJImgFmt.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\ZJImgProc.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\ZJScannerLib.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\OEM\microtek\sane.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\OEM\microtek\scanner.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\OEM\microtek\lang.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\..\lang\*"; DestDir: "{app}\bin\x64\lang\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\cnocr.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\doc_seg.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\ExportFile.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\FormEx.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\GetPdf.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\GetRtf.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\GetXls.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\hanwangOCRdetect.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\hasp_windows_x64_113819.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\HwOcrSdk.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\libmupdf.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\libzip.org.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\mp30.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\ofd.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\pdflib.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\PDFParse.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\tinyxml2.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\zlib.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\msvcp140.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\vcruntime140.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\vcruntime140_1.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
Source: "..\..\x64\Release\concrt140.dll"; DestDir: "{app}\bin\x64\"; Flags: ignoreversion; Check: IsWin64
;拷贝驱动
Source: "..\..\usb\microtek\Microtek_A3HG_scanner_usb.inf"; DestDir: "{app}\driver\"; Flags: ignoreversion recursesubdirs;
Source: "..\..\usb\microtek\Microtek_A3HG_scanner_usb.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}\中晶SCANNERLIB接口文档"; Filename: "{app}\doc\新版SDK接口说明.pdf"
Name: "{group}\{cm:UninstallProgram, {#MyAppName}}"; Filename: "{uninstallexe}";
[Code]
function SetUninstallIcon(iconPath:string): Boolean;
var
InstalledVersion,SubKeyName: String;
begin
SubKeyName := 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{B4804954-7D15-4197-8B72-021F82E90071}_is1';
RegWriteStringValue(HKLM,SubKeyName,'DisplayIcon',iconPath);
end;
procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID = wpFinished then
begin
SetUninstallIcon(ExpandConstant('{app}\MicrotekScannerLib.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