Files
ayanova7/Installs/MBI/MBI.iss
2018-08-22 23:28:09 +00:00

172 lines
6.6 KiB
Plaintext

; MBI Installer
[Setup]
AppName=AyaNova MBI
AppVerName=AyaNova MBI 7.5
AppPublisher=Ground Zero Tech-Works Inc.
AppPublisherURL=https://www.ayanova.com/
AppSupportUrl=http://forum.ayanova.com
AppVersion=7.5.0
;App ID is used for updating and patching
;see: http://www.jrsoftware.org/iskb.php?updateinstall
AppId=ayanovambi4x
DefaultDirName={pf}\Ground Zero Tech-Works Inc.\AyaNovaMBI
DefaultGroupName=AyaNovaMBI
;UninstallDisplayIcon={app}\AyaNova.exe
LicenseFile=license.rtf
WizardImageFile=wizlarge.bmp
WizardImageStretch=no
WizardImageBackColor=clWhite
WizardSmallImageFile=wizsmall.bmp
;Hide page asking where shortcuts should go
DisableProgramGroupPage=Yes
;Hide page prompting user for install location as there is only one valid location
DisableDirPage=Yes
OutputBaseFilename=AyaNovaMBISetup
OutputDir=..
;"release" mode full compression
Compression=lzma/ultra
SolidCompression=true
InternalCompressLevel=ultra
[Files]
Source: "Web.config"; DestDir: "{app}";Permissions: everyone-full;Flags:ignoreversion;Check: CheckIIS;
;Obfuscated files
Source: "..\..\release\obfuscated\GZTW.AyaNova.BLL.dll"; DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\release\obfuscated\GZTW.AyaNovaMBI.dll"; DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\release\obfuscated\GZTW.AyaNovaMBI.Pages.dll"; DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
;website content
Source: "..\..\source\MBI\publish\*.aspx";DestDir: "{app}";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\MBI\publish\*.gif";DestDir: "{app}";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\MBI\publish\*.js";DestDir: "{app}";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\MBI\publish\mbi.css";DestDir: "{app}";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\MBI\publish\PrecompiledApp.config";DestDir: "{app}";Permissions: everyone-full;Flags:ignoreversion;
;bin folder
Source: "..\..\source\MBI\publish\bin\*.compiled";DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
;supporting files
Source: "..\..\source\csla10\CSLA.Core.Bindablebase\bin\Release\CSLA.Core.Bindablebase.dll"; DestDir: "{app}\bin"; Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\csla10\CSLA\bin\Release\CSLA.dll"; DestDir: "{app}\bin"; Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\csla10\CSLA.Server.DataPortal\bin\Release\CSLA.Server.DataPortal.dll"; DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
;Source: "..\..\source\csla10\CSLA.Server.ServicedDataPortal\bin\Release\CSLA.Server.ServicedDataPortal.dll"; DestDir: "{app}\bin"; Permissions: everyone-full; Flags:ignoreversion;
Source: "..\..\source\Data\Data\bin\Release\GZTW.Data.dll"; DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
Source: "..\..\source\Profile\GZTW.Profile\bin\Release\GZTW.Profile.dll"; DestDir: "{app}\bin";Permissions: everyone-full;Flags:ignoreversion;
Source: "license.rtf"; DestDir: "{app}"
;JSON license format required Files (case 3122)
Source: "..\..\3rdprtylibs\crypt\BouncyCastle.Crypto.dll"; DestDir: "{app}\bin"
Source: "..\..\3rdprtylibs\json.net.40\Newtonsoft.Json.dll"; DestDir: "{app}\bin"
;firebird files
;;;;;;Source: "..\..\3rdprtylibs\Firebird embedded server files\fbembed.dll"; DestDir: "{app}\bin"
Source: "..\..\3rdprtylibs\Firebird embedded server files\firebird.msg"; DestDir: "{app}\bin"
Source: "..\..\3rdprtylibs\Firebird embedded server files\icudt30.dll"; DestDir: "{app}\bin"
Source: "..\..\3rdprtylibs\Firebird embedded server files\icuin30.dll"; DestDir: "{app}\bin"
Source: "..\..\3rdprtylibs\Firebird embedded server files\icuuc30.dll"; DestDir: "{app}\bin"
;Neither Vista or XP include the c runtime v7 .dll's which fbembed requires
;a lot of people will have them but not on a fresh vista or xp install so
;better safe than sorry
;;;;;;;Source: "msvcp71.dll"; DestDir: "{app}\bin"
;;;;;;Source: "msvcr71.dll"; DestDir: "{app}\bin"
Source: "..\..\3rdprtylibs\firebird ado.net driver\FirebirdSql.Data.FirebirdClient.dll"; DestDir: "{app}\bin"
;Sample and real config files
Source: "config.txt"; DestDir: "{app}\bin";Permissions: everyone-full;flags:confirmoverwrite;
[Code]
var
MBIChecked: Boolean;
MBICheckResult: Boolean;
{--- Data Portal ---}
const
IISServerName = 'localhost';
IISServerNumber = '1';
IISURL = 'http://127.0.0.1';
function CheckIIS(): Boolean;
var
IIS, WebSite, WebServer, WebRoot, VDir: Variant;
begin
if not MBIChecked then begin
MBIChecked := True;
MBICheckResult := False;
{ Create the main IIS COM Automation object }
try
IIS := CreateOleObject('IISNamespace');
except
RaiseException('MBI requires Microsoft IIS.'#13#13'(Error ''' + GetExceptionMessage + ''' occurred)');
end;
{ Connect to the IIS server }
WebSite := IIS.GetObject('IIsWebService', IISServerName + '/w3svc');
WebServer := WebSite.GetObject('IIsWebServer', IISServerNumber);
WebRoot := WebServer.GetObject('IIsWebVirtualDir', 'Root');
{ (Re)create a virtual dir }
try
WebRoot.Delete('IIsWebVirtualDir', 'AyaNovaMBI');
WebRoot.SetInfo();
except
end;
VDir := WebRoot.Create('IIsWebVirtualDir', 'AyaNovaMBI');
VDir.AccessRead := True;
VDir.AccessExecute := True;
VDir.AppFriendlyName := 'AyaNova MBI';
VDir.Path := ExpandConstant('{app}');
VDir.AppCreate(True);
VDir.DefaultDoc := 'default.aspx';
VDir.SetInfo();
MBICheckResult := True;
{MsgBox('Created virtual directory AyaNovaMBI'#13#13+VDir.Path, mbInformation, mb_Ok);}
end;
Result := MBICheckResult;
end;
{Check for the .net 4 framework}
function InitializeSetup(): Boolean;
var
ErrorCode: Integer;
NetFrameWorkInstalled : Boolean;
Result1 : Boolean;
begin
NetFrameWorkInstalled := RegKeyExists(HKLM,'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full');
if NetFrameWorkInstalled then
begin
Result := true;
end else
begin
Result1 := MsgBox('This application requires the .NET Framework 4.'+#13#13+'Please download and install the .NET Framework and run this setup again.'+#13#13+'Do you want to download the framework now?',
mbConfirmation, MB_YESNO) = idYes;
if Result1 =false then
begin
Result:=false;
end else
begin
Result:=false;
ShellExec('open',
'http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992',
'','',SW_SHOWNORMAL,ewNoWait,ErrorCode);
end;
end;
end;