Dear randem,
Is Innoscript able to create preinstaller?
Here is the problem I want to create installer:
1. mySQL install first
2. automatically create database by execute SQL script
3. automatically install my software
Any simple tutorial how can I do this using InnoScript 11.1.17? Many thanks.
Hello.... any advice to my question? I try input mySQL installer in External Installs but it error cause GroupDescription must be fill and I already fill it with mySQL Database but still have error.
Or I have to install it manually?
Thanks.
Many of your questions (with examples) can be answered in the documentation (Help->Documentation).
You can create anything that you want. A pre-installer is simply another installer that you run first before you main installer. It does not differ much from the main installer except it runs the main installer.
Yes I have opened Help-Documentation but still have this problems....
(https://randemsystems.support/discus/messages/12/10579.jpg)
I cannot tell what the error is by looking at only part of the script (especially since that is not where the error starts). That would be like looking at the tires on a car to determine why the engine will not start...
We need to see the whole script... Please post the complete script
; InnoScript Version 11.1 Build 17
; Randem Systems, Inc.
; Copyright (c) 2002 - 2011, Randem Systems, Inc.
; Website: https://randemsystems.com (https://randemsystems.com)
; Support: https://randemsystems.support (https://randemsystems.support)
; OS: Windows XP 5.1 build 2600 (Service Pack 2)
; Derived from VB VBP Project File
; Designed for Inno Setup Version: 5.5.0 (a)
; Installed Inno Setup Version: 5.5.0 (a)
; Date: June 14, 2012
; Local Machine Settings. Use these settings as a template for your installation folders
; {app} : C:\Program Files\Randem Systems\InnoScript
; {appdata} : C:\Documents and Settings\Andrianto L. Widodo\Application Data\Randem Systems\InnoScript\
; {localappdata} : C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\
; {cf} : C:\Program Files\Common Files\Randem Systems
; {tmp} : C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Temp\
; {commonappdata} : C:\Documents and Settings\All Users.WINDOWS\Application Data\Randem Systems\InnoScript\Release\
; {pf} : C:\Program Files\
; VB Runtime Files Folder: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 6 Redist Files\
; Visual Basic Project File (.vbp): D:\Project VB\SegerAgro\PrSegerAgroNusantara.vbp
; Inno Setup Script Output File (.iss): D:\Project VB\SegerAgro\Scripts\PrSegerAgroNusantara 1.0.0.iss
;: D:\Project VB\SegerAgro\Scripts\Templates\SegerAgro.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\AutoOSUpdater.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\VCRuntime.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\Crystal Reports.tpl
; ------------------------
; References
; ------------------------
; OLE Automation - (stdole2.tlb)
; Microsoft ActiveX Data Objects 2.7 Library - (msado27.tlb)
; Crystal Reports ActiveX Designer Design and Runtime Library 11.5 - (craxddrt.dll)
; Crystal Reports ActiveX Designer Library 11.5 - (craxdui.dll)
; Microsoft Data Binding Collection VB 6.0 (SP4) - (MSBIND.DLL)
; --------------------------
; Components
; --------------------------
; Data Dynamics ActiveBar 2.0 - (Actbar2.ocx)
; ActiveSplash 1.0 Type Library - (actsplash.ocx)
; Crystal ActiveX Report Viewer Library 11.5 - (CRViewer.dll)
; ComponentOne True DBDate 8.0 - (tidate8.ocx)
; ComponentOne True DBNumber 8.0 - (tinumb8.ocx)
; ComponentOne True DBMask 8.0 - (timask8.ocx)
; FindButton by Bibin - (FindButton.ocx)
; Microsoft Common Dialog Control 6.0 (SP6) - (comdlg32.ocx)
; Microsoft Windows Common Controls 6.0 (SP6) - (MSCOMCTL.OCX)
; ComponentOne True DBGrid Pro 8.0 (OLEDB) - (todg8.ocx)
; ComponentOne True DBList Pro 8.0 (OLEDB) - (todl8.ocx)
[Setup]
SetupLogging=Yes
AppId=SIB 1.0
;------------------------------------------------------------------------------------------------------------------------
; Taken from VBP/VBG Project File Parameters AppName, AppName AppVersion and Company
;------------------------------------------------------------------------------------------------------------------------
AppName=SIB 1.0 1.0.0
AppVerName=SIB 1.0
AppPublisher=PT. Seger Agro Nusantara
;------------------------------------------------------------------------------------------------------------------------
AppVersion=1.0.0
VersionInfoVersion=1.0.0
AllowNoIcons=yes
DefaultGroupName=SIB 1.0\
DefaultDirName={pf}\SIB 1.0
AppCopyright=2012
PrivilegesRequired=None
MinVersion=0,5.01
OnlyBelowVersion=0,7.0
Compression=lzma
OutputBaseFilename=SIB0100000
[Tasks]
Name: Desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}
Name: AutoOSUpdater; Description: Install Database Support Updater; GroupDescription: Database Support:
Name: VCRuntime2008; Description: Install VC 2008 Runtimes SP1; GroupDescription: VC Runtimes:
Name: ScriptingRuntime; Description: Install Microsoft's Scripting Runtime; GroupDescription: Install Scripting Runtime:
Name: CRInstallation; Description: Install Crystal Reports Runtime Files; GroupDescription: Install CR Runtime Files:
[Files]
Source: D:\Project VB\SegerAgro\Scripts\VB_VC_DCOM_MDAC_JET_AutoSetup.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; AfterInstall: InstallAutoOSUpdater('{tmp}\VB_VC_DCOM_MDAC_JET_AutoSetup.exe','/NORESTART /VERYSILENT'); Tasks: AutoOSUpdater;
Source: D:\Project VB\SegerAgro\Scripts\vcredist_x86_2008_SP1.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; AfterInstall: InstallVCRuntime('{tmp}\vcredist_x86_2008_SP1.exe','/q /l{sd}\vcredist_x86_2008_SP1.exe.txt'); Tasks: VCRuntime2008;
Source: D:\Project VB\SegerAgro\Report\*.*; DestDir: {app}\Report\; Flags:
Source: C:\WINDOWS\system32\stdole2.tlb; DestDir: {sys}; Flags: regtypelib restartreplace uninsneveruninstall;
Source: C:\Program Files\Common Files\Data Dynamics\ActiveBar2\Actbar2.ocx; DestDir: {cf}\Data Dynamics\ActiveBar2\; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\actsplash.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\tidate8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\CRXI_5_RDC_Redistribution.msi; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; Tasks: CRInstallation
Source: D:\Project VB\SegerAgro\Scripts\tinumb8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\timask8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\FindButton.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\comdlg32.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: C:\WINDOWS\Installer\$PatchCache$\Managed\00002109030000000000000000F01FEC\12.0.4518\MSCOMCTL.OCX; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\todg8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\todl8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\SIB.exe; DestDir: {app}; Flags: ignoreversion restartreplace;
Source: D:\Project VB\SegerAgro\Scripts\scripten.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.02; Tasks: ScriptingRuntime
Source: D:\Project VB\SegerAgro\toolbar.tb2; DestDir: {app}; Flags: ignoreversion;
Source: D:\Project VB\SegerAgro\Background.jpg; DestDir: {app}; Flags: ignoreversion;
Source: D:\Project VB\SegerAgro\Config.lic; DestDir: {app}; Flags: ignoreversion;
Source: D:\Project VB\SegerAgro\sgr.spl; DestDir: {app}; Flags: ignoreversion;
Source: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 5 Redist Files\OLEAUT32.dll; DestDir: {sys}; Flags: restartreplace sharedfile;
Source: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 5 Redist Files\OLEPRO32.DLL; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
[INI]
[Icons]
Name: {group}\PrSegerAgroNusantara ; Filename : {app}\SIB.exe; WorkingDir: {app};
Name: {group}{cm:UninstallProgram, PrSegerAgroNusantara }; Filename: {uninstallexe};
Name: {commondesktop}\PrSegerAgroNusantara ; Filename: {app}\SIB.exe; Tasks: Desktopicon ; WorkingDir: {app};
[Run]
Filename: {tmp}\scripten.exe; Parameters: /quiet /passive; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.02; WorkingDir: {tmp}; Flags: skipifdoesntexist runascurrentuser; Tasks: ScriptingRuntime; StatusMsg: Installing Scripting Runtime;
Filename: msiexec.exe; Parameters: /package CRXI_5_RDC_Redistribution.msi /passive /promptrestart /l* {sd}\CRXI_5_RDC_Redistribution.msi.txt; WorkingDir: {tmp}; Flags: skipifdoesntexist runascurrentuser; Tasks: CRInstallation; StatusMsg: Installing Crystal Reports Runtimes;
; Register the Crystal Reports Merge Module components that need to be registered in place where the Merge Modules installed them
Filename: regsvr32.exe; Parameters: /s {code:GetCLSIDFldr|!F62B9FA4-455F-4FE3-8A2D-205E4F0BCAFB@\11.5.9.1265}{code:LogFileName|crviewer.dll}; WorkingDir: {code:GetCLSIDFldr|!F62B9FA4-455F-4FE3-8A2D-205E4F0BCAFB@\11.5.9.1265}\; StatusMsg: Registering Crystal ActiveX Report Viewer Library 11.5; Tasks: CRInstallation; Flags: runascurrentuser
Filename: regsvr32.exe; Parameters: /s {code:GetCLSIDFldr|!4FB2D832-C996-4EB1-BE0D-4DE953CF25F0@\11.5.9.1265}{code:LogFileName|craxddrt.dll}; WorkingDir: {code:GetCLSIDFldr|!4FB2D832-C996-4EB1-BE0D-4DE953CF25F0@\11.5.9.1265}\; StatusMsg: Registering Crystal Reports ActiveX Designer Design and Runtime Library 11.5; Tasks: CRInstallation; Flags: runascurrentuser
Filename: regsvr32.exe; Parameters: /s {code:GetCLSIDFldr|!BD4B4E53-F7B8-11D0-964D-00A0C9273C2A@\11.5.0.313}{code:LogFileName|craxdui.dll}; WorkingDir: {code:GetCLSIDFldr|!BD4B4E53-F7B8-11D0-964D-00A0C9273C2A@\11.5.0.313}\; StatusMsg: Registering Crystal Reports ActiveX Designer Library 11.5; Tasks: CRInstallation; Flags: runascurrentuser
Filename: {src}\Support\mysql-5.5.24-win32.msi; Parameters: /passive; Flags: skipifdoesntexist; Tasks: mySQLDatabase; WorkingDir: {tmp}
Filename: {app}\SIB.exe; Description: {cm:LaunchProgram, PrSegerAgroNusantara }; Flags: nowait postinstall skipifsilent runascurrentuser; WorkingDir: {app}
[UninstallDelete]
Type: dirifempty; Name: {app}
[InstallDelete]
Type: files; Name: {app}\Install.log;
[Code]
//=============================================================
// Install the Automatic OS Updater
//=============================================================
Procedure InstallAutoOSUpdater(Filename: String; Param: String);
var
ErrorCode: Integer;
begin
ShellExec('', ExpandConstant(Filename), ExpandConstant(Param), '', SW_SHOW, ewWaitUntilTerminated, ErrorCode);
end;
//===================================================================
// Install VC Runtime files
//===================================================================
Procedure InstallVCRuntime(Filename: String; Param: String);
var
ErrorCode: Integer;
begin
ShellExec('', ExpandConstant(Filename), ExpandConstant(Param), '', SW_SHOW, ewWaitUntilTerminated, ErrorCode);
end;
//========================================================================================================================
// Get the CLSID from the registry for the queried file to locate where this file was installed by the CR merge module
// We do this so that we know where to register the file after installation.
//========================================================================================================================
function GetCLSIDFldr(Param: String): String;
var
Location: String;
CSLID: String;
LogFile: String;
sStr: String;
begin
CSLID := Param;
StringChangeEx(CSLID, '!', '{', True);
StringChangeEx(CSLID, '@', '}', True);
LogFile := ExpandConstant('{app}') '\Install.log';
SaveStringToFile(LogFile, #13#10 CSLID #13#10, True);
if not RegQueryStringValue(HKEY_CLASSES_ROOT, 'TypeLib\' CSLID '\0\win32','', Location) then
Result := 'Not Registered !!!' #13#10 'Possible Wrong Crystal Reports Version Installed on Source Machine or ' #13#10 'Wrong CRystal Reports Merge Module Installed on Target Machine' #13#10;
begin
Location := ExpandConstant(Location)
sStr := #13#10 Location #13#10 StringOfChar('*',70) #13#10
SaveStringToFile(LogFile, sStr, True);
Result := ExtractFileDir(Location);
end;
end;
//=============================================================
// Log the filename process to a log file
//=============================================================
function LogFileName(Filename: String): String;
var
LogFile: String;
sSTr: String;
begin
LogFile := ExpandConstant('{app}') '\Install.log';
sStr := #13#10 'Registering ' Filename #13#10;
SaveStringToFile(LogFile, sStr, True);
Result := Filename;
end;
//============================================================================
Ok, so how did this line get into your script. You just gave an error message without telling the full story.
Filename: {src}Supportmysql-5.5.24-win32.msi; Parameters: /passive; Flags: skipifdoesntexist; Tasks: mySQLDatabase; WorkingDir: {tmp}
BTW: You should not be getting files directly form you system areas. There is a whole section on that... There is also a message each time you run InnoScript about this and what to do about it. This is asking for trouble down the road if you do this.
You also had to go thru a procedure to get InnoScript and Inno Setup to ignore this. This is very bad to do.
Do you mean this row?
Source: C:WINDOWSInstaller$PatchCache$Managed00002109030000000000000000F01FEC12.0.4518MSCOMCTL.OCX; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
InnoScript automatically create that, but if I run at my home, that row doesn't exist, so I didn't know which one is right.
I click External Installs and I choose file installer mySQL, but I don't know what parameter should I type.
No, I meant this line:
Source: C:\WINDOWS\system32\stdole2.tlb; DestDir: {sys}; Flags: regtypelib restartreplace uninsneveruninstall;
You had to turn SAFE MODE off to get InnoScript to do this. There is a reason it's called SAFE MODE. This file is unsafe to deploy if you have not done the research to find out if it can be deployed and to what OS.
Yes you created an External install but you did not tell InnoScript to create the associated task to go with it. You have to select to create the task if you add one.
OK, I have turn Safe Mode to ON.
BTW, how can I create the task? InnoScripts didn't create it automatically?
When you created the External Install, there is a selection that tells InnoScript to create a task for your entry. The entry is as stated below:
Task Needed:
You will need to edit your External Install to select it.
OK thanks.... What is the difference between Task Needed, Task Selected and Exclusive.
BTW, mySQL 5.5.24 need .NET Framework 4 to be installed, so I include .NET 4.0 but I have this error
(https://randemsystems.support/discus/messages/12/10582.jpg)
Task Needed: This entry needs a task created
Task Selected: This entries task will be automatically selected to be used
Exclusive: If you do task grouping you need to select this one. It turns only one task in the group on and the others off.
I will look into this error. Did you exit then restart InnoScript to see if it has any effect?
If I may suggest, when user added some External Installs, the checkbox Task Needed should automatically checked, or it have another case that it should be checked manually?
I have close and open InnoScript again but still have that error message with adding dotNET 4.0
Just because you add an external install doe not mean that you need a task and in most cases you would not. Secondly you could be adding this install to an existing task.
I will check on the DOT4 error
Please zip and post your .pjt file for this project. I cannot get the error to happen.
Replace your InnoScript.exe with this one then run it. Post the error that you get.
I believe this will fix the error
I have update the new version. In which folder can I put the dotnet4 installer?
Where is the script looking for it at?
; InnoScript Version 11.1 Build 19
; Randem Systems, Inc.
; Copyright (c) 2002 - 2011, Randem Systems, Inc.
; Website: https://randemsystems.com (https://randemsystems.com)
; Support: https://randemsystems.support (https://randemsystems.support)
; OS: Windows XP 5.1 build 2600 (Service Pack 2)
; Derived from VB VBP Project File
; Designed for Inno Setup Version: 5.5.0 (a)
; Installed Inno Setup Version: 5.5.0 (a)
; Date: June 15, 2012
; Local Machine Settings. Use these settings as a template for your installation folders
; {app} : C:\Program Files\Randem Systems\InnoScript
; {appdata} : C:\Documents and Settings\Andrianto L. Widodo\Application Data\Randem Systems\InnoScript\
; {localappdata} : C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\
; {cf} : C:\Program Files\Common Files\Randem Systems
; {tmp} : C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Temp\
; {commonappdata} : C:\Documents and Settings\All Users.WINDOWS\Application Data\Randem Systems\InnoScript\Release\
; {pf} : C:\Program Files\
; VB Runtime Files Folder: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 6 Redist Files\
; Visual Basic Project File (.vbp): D:\Project VB\SegerAgro\PrSegerAgroNusantara.vbp
; Inno Setup Script Output File (.iss): D:\Project VB\SegerAgro\Scripts\PrSegerAgroNusantara 1.0.0.iss
;: D:\Project VB\SegerAgro\Scripts\Templates\SegerAgro.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\AutoOSUpdater.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\VCRuntime.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\Crystal Reports.tpl
;: C:\Documents and Settings\Andrianto L. Widodo\Local Settings\Application Data\Randem Systems\InnoScript\Release\Templates\dotNETInstall.tpl
; ------------------------
; References
; ------------------------
; OLE Automation - (stdole2.tlb)
; Microsoft ActiveX Data Objects 2.7 Library - (msado27.tlb)
; Crystal Reports ActiveX Designer Design and Runtime Library 11.5 - (craxddrt.dll)
; Crystal Reports ActiveX Designer Library 11.5 - (craxdui.dll)
; Microsoft Data Binding Collection VB 6.0 (SP4) - (MSBIND.DLL)
; --------------------------
; Components
; --------------------------
; Data Dynamics ActiveBar 2.0 - (Actbar2.ocx)
; ActiveSplash 1.0 Type Library - (actsplash.ocx)
; Crystal ActiveX Report Viewer Library 11.5 - (CRViewer.dll)
; ComponentOne True DBDate 8.0 - (tidate8.ocx)
; ComponentOne True DBNumber 8.0 - (tinumb8.ocx)
; ComponentOne True DBMask 8.0 - (timask8.ocx)
; FindButton by Bibin - (FindButton.ocx)
; Microsoft Common Dialog Control 6.0 (SP6) - (comdlg32.ocx)
; Microsoft Windows Common Controls 6.0 (SP6) - (MSCOMCTL.OCX)
; ComponentOne True DBGrid Pro 8.0 (OLEDB) - (todg8.ocx)
; ComponentOne True DBList Pro 8.0 (OLEDB) - (todl8.ocx)
[Setup]
SetupLogging=Yes
AppId=SIB 1.0
;------------------------------------------------------------------------------------------------------------------------
; Taken from VBP/VBG Project File Parameters AppName, AppName AppVersion and Company
;------------------------------------------------------------------------------------------------------------------------
AppName=SIB 1.0 1.0.0
AppVerName=SIB 1.0
AppPublisher=PT. Seger Agro Nusantara
;------------------------------------------------------------------------------------------------------------------------
AppVersion=1.0.0
VersionInfoVersion=1.0.0
AllowNoIcons=yes
DefaultGroupName=SIB 1.0\
DefaultDirName={pf}\SIB 1.0
AppCopyright=2012
PrivilegesRequired=None
MinVersion=0,5.01
OnlyBelowVersion=0,7.0
Compression=lzma
OutputBaseFilename=SIB0100000
[Tasks]
Name: Desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}
Name: AutoOSUpdater; Description: Install Database Support Updater; GroupDescription: Database Support:
Name: VCRuntime2008; Description: Install VC 2008 Runtimes SP1; GroupDescription: VC Runtimes:
Name: DotNetFramework40; Description: Install .Net Framework 40; GroupDescription: .Net Framework:; Check: InstallDotNET40(0)
Name: ScriptingRuntime; Description: Install Microsoft's Scripting Runtime; GroupDescription: Install Scripting Runtime:
Name: CRInstallation; Description: Install Crystal Reports Runtime Files; GroupDescription: Install CR Runtime Files:
Name: mySQLInstaller; Description: Install mySQL 5.5; GroupDescription: Additional Installations:; Flags: unchecked
[Files]
Source: D:\Project VB\SegerAgro\Scripts\VB_VC_DCOM_MDAC_JET_AutoSetup.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; AfterInstall: InstallAutoOSUpdater('{tmp}\VB_VC_DCOM_MDAC_JET_AutoSetup.exe','/NORESTART /VERYSILENT'); Tasks: AutoOSUpdater;
Source: dotnetfx40.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; AfterInstall: InstalldotNETFramework('{tmp}\dotnetfx40.exe','/passive /norestart /log {sd}\dotNET40Log.txt'); Tasks: DotNetFramework40;
Source: D:\Project VB\SegerAgro\Scripts\vcredist_x86_2008_SP1.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; AfterInstall: InstallVCRuntime('{tmp}\vcredist_x86_2008_SP1.exe','/q /l{sd}\vcredist_x86_2008_SP1.exe.txt'); Tasks: VCRuntime2008;
Source: D:\Project VB\SegerAgro\Report\*.*; DestDir: {app}\Report\; Flags:
Source: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 5 Redist Files\stdole2.tlb; DestDir: {sys}; Flags: regtypelib restartreplace uninsneveruninstall;
Source: C:\Program Files\Common Files\Data Dynamics\ActiveBar2\Actbar2.ocx; DestDir: {cf}\Data Dynamics\ActiveBar2\; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\actsplash.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\tidate8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\CRXI_5_RDC_Redistribution.msi; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; Tasks: CRInstallation
Source: D:\Project VB\SegerAgro\Scripts\tinumb8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\timask8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\FindButton.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\comdlg32.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\MSCOMCTL.OCX; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\todg8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\Scripts\todl8.ocx; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
Source: D:\Project VB\SegerAgro\SIB.exe; DestDir: {app}; Flags: ignoreversion restartreplace;
Source: D:\Project VB\SegerAgro\Scripts\scripten.exe; DestDir: {tmp}; Flags: deleteafterinstall ignoreversion nocompression; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.02; Tasks: ScriptingRuntime
Source: D:\Project VB\SegerAgro\toolbar.tb2; DestDir: {app}; Flags: ignoreversion;
Source: D:\Project VB\SegerAgro\Background.jpg; DestDir: {app}; Flags: ignoreversion;
Source: D:\Project VB\SegerAgro\Config.lic; DestDir: {app}; Flags: ignoreversion;
Source: D:\Project VB\SegerAgro\sgr.spl; DestDir: {app}; Flags: ignoreversion;
Source: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 5 Redist Files\OLEAUT32.dll; DestDir: {sys}; Flags: restartreplace sharedfile;
Source: C:\Program Files\Randem Systems\InnoScript\InnoScript 11\VB 5 Redist Files\OLEPRO32.DLL; DestDir: {sys}; Flags: regserver restartreplace sharedfile;
[INI]
[Icons]
Name: {group}\PrSegerAgroNusantara ; Filename : {app}\SIB.exe; WorkingDir: {app};
Name: {group}{cm:UninstallProgram, PrSegerAgroNusantara }; Filename: {uninstallexe};
Name: {commondesktop}\PrSegerAgroNusantara ; Filename: {app}\SIB.exe; Tasks: Desktopicon ; WorkingDir: {app};
[Run]
Filename: {tmp}\scripten.exe; Parameters: /quiet /passive; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.02; WorkingDir: {tmp}; Flags: skipifdoesntexist runascurrentuser; Tasks: ScriptingRuntime; StatusMsg: Installing Scripting Runtime;
Filename: msiexec.exe; Parameters: /package CRXI_5_RDC_Redistribution.msi /passive /promptrestart /l* {sd}\CRXI_5_RDC_Redistribution.msi.txt; WorkingDir: {tmp}; Flags: skipifdoesntexist runascurrentuser; Tasks: CRInstallation; StatusMsg: Installing Crystal Reports Runtimes;
; Register the Crystal Reports Merge Module components that need to be registered in place where the Merge Modules installed them
Filename: regsvr32.exe; Parameters: /s {code:GetCLSIDFldr|!F62B9FA4-455F-4FE3-8A2D-205E4F0BCAFB@\11.5.9.1265}{code:LogFileName|crviewer.dll}; WorkingDir: {code:GetCLSIDFldr|!F62B9FA4-455F-4FE3-8A2D-205E4F0BCAFB@\11.5.9.1265}\; StatusMsg: Registering Crystal ActiveX Report Viewer Library 11.5; Tasks: CRInstallation; Flags: runascurrentuser
Filename: regsvr32.exe; Parameters: /s {code:GetCLSIDFldr|!4FB2D832-C996-4EB1-BE0D-4DE953CF25F0@\11.5.9.1265}{code:LogFileName|craxddrt.dll}; WorkingDir: {code:GetCLSIDFldr|!4FB2D832-C996-4EB1-BE0D-4DE953CF25F0@\11.5.9.1265}\; StatusMsg: Registering Crystal Reports ActiveX Designer Design and Runtime Library 11.5; Tasks: CRInstallation; Flags: runascurrentuser
Filename: regsvr32.exe; Parameters: /s {code:GetCLSIDFldr|!BD4B4E53-F7B8-11D0-964D-00A0C9273C2A@\11.5.0.313}{code:LogFileName|craxdui.dll}; WorkingDir: {code:GetCLSIDFldr|!BD4B4E53-F7B8-11D0-964D-00A0C9273C2A@\11.5.0.313}\; StatusMsg: Registering Crystal Reports ActiveX Designer Library 11.5; Tasks: CRInstallation; Flags: runascurrentuser
Filename: {src}\Support\mysql-5.5.24-win32.msi; Parameters: ; Flags: skipifdoesntexist; Tasks: mySQLInstaller; WorkingDir: {tmp}
Filename: {app}\SIB.exe; Description: {cm:LaunchProgram, PrSegerAgroNusantara }; Flags: nowait postinstall skipifsilent runascurrentuser; WorkingDir: {app}
[UninstallDelete]
Type: dirifempty; Name: {app}
[InstallDelete]
Type: files; Name: {app}\Install.log;
[Code]
//=============================================================
// Install the Automatic OS Updater
//=============================================================
Procedure InstallAutoOSUpdater(Filename: String; Param: String);
var
ErrorCode: Integer;
begin
ShellExec('', ExpandConstant(Filename), ExpandConstant(Param), '', SW_SHOW, ewWaitUntilTerminated, ErrorCode);
end;
//===================================================================
// Install VC Runtime files
//===================================================================
Procedure InstallVCRuntime(Filename: String; Param: String);
var
ErrorCode: Integer;
begin
ShellExec('', ExpandConstant(Filename), ExpandConstant(Param), '', SW_SHOW, ewWaitUntilTerminated, ErrorCode);
end;
//================================================================================================================
// This section of code will check for the existance of a .NET installation and service pack associated with it.
//================================================================================================================
//===================================================================
// Get the Service Pack of the .NET installation
//===================================================================
function GetDotNETSP(dotNETVersion: string): cardinal;
var
success: boolean;
install: cardinal;
regloc: String;
begin
regloc := 'SOFTWARE\Microsoft\NET Framework Setup\NDP\' dotNETVersion;
success := RegQueryDWordValue(HKLM, regloc, 'SP', install);
Result := install;
end;
//=========================================================================================================
// Indicates whether .NET Framework 1.1 is installed with the service pack that was queried for
//=========================================================================================================
function IsDotNET11Detected(SP: cardinal): boolean;
var
success: boolean;
install: cardinal;
SPNum: cardinal;
begin
success := RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322', 'Install', install);
// Check to see if the given Service Pack is installed
SPNum := GetDotNETSP('v1.1.4322')
Result := success and (install = 1) and (SPNum = SP);
end;
//===================================================================
//RETURNS OPPOSITE OF IsDotNet11Detected FUNCTION
//===================================================================
function InstallDotNET11(SP: integer): Boolean;
begin
Result := not IsDotNET11Detected(SP);
end;
//=====================================================================================================
// Indicates whether .NET Framework 2.0 is installed with the service pack that was queried for
//=====================================================================================================
function IsDotNET20Detected(SP: cardinal): boolean;
var
success: boolean;
install: cardinal;
SPNum: cardinal;
begin
success := RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727', 'Install', install);
// Check to see if the given Service Pack is installed
SPNum := GetDotNETSP('v2.0.50727')
Result := success and (install = 1) and (SPNum = SP);
end;
//===================================================================
//RETURNS OPPOSITE OF IsDotNet20Detected FUNCTION
//===================================================================
function InstallDotNET20(SP: integer): Boolean;
begin
Result := not IsDotNET20Detected(SP);
end;
//=========================================================================================================
// Indicates whether .NET Framework 3.0 is installed with the service pack that was queried for
//=========================================================================================================
function IsDotNET30Detected(SP: cardinal): boolean;
var
success: boolean;
install: cardinal;
SPNum: cardinal;
begin
success := RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0', 'Install', install);
// Check to see if the given Service Pack is installed
SPNum := GetDotNETSP('v3.0')
Result := success and (install = 1) and (SPNum = SP);
end;
//===================================================================
//RETURNS OPPOSITE OF IsDotNet30Detected FUNCTION
//===================================================================
function InstallDotNET30(SP: integer): Boolean;
begin
Result := not IsDotNET30Detected(SP);
end;
//===================================================================================================
// Indicates whether .NET Framework 3.0 is installed with the service pack that was queried for
//===================================================================================================
function IsDotNET35Detected(SP: cardinal): boolean;
var
success: boolean;
install: cardinal;
SPNum: cardinal;
begin
success := RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5', 'Install', install);
// Check to see if the given Service Pack is installed
SPNum := GetDotNETSP('v3.5')
Result := success and (install = 1) and (SPNum = SP);
end;
//===================================================================
//RETURNS OPPOSITE OF IsDotNet35Detected FUNCTION
//===================================================================
function InstallDotNET35(SP: integer): Boolean;
begin
Result := not IsDotNET35Detected(SP);
end;
//==================================================================================================
// Indicates whether .NET Framework 3.0 is installed with the service pack that was queried for
//==================================================================================================
function IsDotNET40Detected(SP: cardinal): boolean;
var
success: boolean;
install: cardinal;
SPNum: cardinal;
begin
success := RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full', 'Install', install);
// Check to see if the given Service Pack is installed
SPNum := GetDotNETSP('v4')
Result := success and (install = 1) and (SPNum = SP);
end;
//===================================================================
//RETURNS OPPOSITE OF IsDotNet40Detected FUNCTION
//===================================================================
function InstallDotNET40(SP: integer): Boolean;
begin
Result := not IsDotNET40Detected(SP);
end;
//===================================================================
// Install .NET Framework
//===================================================================
Procedure InstalldotNETFramework(Filename: String; Param: String);
var
ErrorCode: Integer;
begin
ShellExec('', ExpandConstant(Filename), ExpandConstant(Param), '', SW_SHOW, ewWaitUntilTerminated, ErrorCode);
end;
//========================================================================================================================
// Get the CLSID from the registry for the queried file to locate where this file was installed by the CR merge module
// We do this so that we know where to register the file after installation.
//========================================================================================================================
function GetCLSIDFldr(Param: String): String;
var
Location: String;
CSLID: String;
LogFile: String;
sStr: String;
begin
CSLID := Param;
StringChangeEx(CSLID, '!', '{', True);
StringChangeEx(CSLID, '@', '}', True);
LogFile := ExpandConstant('{app}') '\Install.log';
SaveStringToFile(LogFile, #13#10 CSLID #13#10, True);
if not RegQueryStringValue(HKEY_CLASSES_ROOT, 'TypeLib\' CSLID '\0\win32','', Location) then
Result := 'Not Registered !!!' #13#10 'Possible Wrong Crystal Reports Version Installed on Source Machine or ' #13#10 'Wrong CRystal Reports Merge Module Installed on Target Machine' #13#10;
begin
Location := ExpandConstant(Location)
sStr := #13#10 Location #13#10 StringOfChar('*',70) #13#10
SaveStringToFile(LogFile, sStr, True);
Result := ExtractFileDir(Location);
end;
end;
//=============================================================
// Log the filename process to a log file
//=============================================================
function LogFileName(Filename: String): String;
var
LogFile: String;
sSTr: String;
begin
LogFile := ExpandConstant('{app}') '\Install.log';
sStr := #13#10 'Registering ' Filename #13#10;
SaveStringToFile(LogFile, sStr, True);
Result := Filename;
end;
//============================================================================
It follows the same procedure as every other file that you use... After you download it, put is some place that InnoScript can find it...
OK thx, all runs well... I rename first the file that I've downloaded become dotnetfx40.exe cause the script asked that file
OK, Great. Did you realize you could downloads the files from the Downloads menu in InnoScript?
OK thanks for the info, I never try to download from downloads menu before