Installatieprogramma's maken met Inno Setup

Inno-configuratie stelt u in staat het installatieproces te configureren dat de software moet volgen, met behulp van een assistent of wizard en in meer geavanceerde modus met het programmeren van een script, dit zijn tekstbestanden met een sequentieel formaat waarmee u kunt bepalen welke stappen moeten worden gevolgd .

Inno Setup-scripts zijn tekstbestanden met de extensie .iss. Het script regelt alle aspecten van de installatie. Het specificeert welke bestanden moeten worden geïnstalleerd en waar, welke menu's en mappen moeten worden aangemaakt en welke bronnen de applicatie die we installeren nodig heeft.
Scriptbestanden zijn tekstbestanden die kunnen worden gemaakt en bewerkt vanuit Inno Setup of vanuit een willekeurige teksteditor. De software stelt ons in staat om het iss-scriptbestand te compileren en zal standaard de naam Setup.exe toewijzen zodra het is gecompileerd, daarom hebben we een compleet programma, klaar om te distribueren en om de installatie uit te voeren.
Om een ​​eenvoudig voorbeeld te starten zullen we beginnen, in dit geval zullen we het doen vanuit Linux met Wijn en de assistent.

Hieronder beschrijven we de applicatiegegevens, applicatienaam, versie, bedrijf dat het heeft ontwikkeld, website.

De volgende stap is om te configureren in welke map de applicatie wordt geïnstalleerd, standaard is dit Program Folder of Program Files, zowel in Windows als in Linux met Wine bevindt deze map zich, als de installatiemap niet bestaat, de software zal het creëren.

Dan moeten we ons uitvoerbare bestand en zijn afhankelijkheden of bibliotheken toewijzen, hier nemen we als voorbeeld een software die we hadden ontwikkeld met Java en geconverteerd naar exe met Launch4j in de tutorial Netbeans en Sqlite in drie lagen - Deel II

De volgende stap zal zijn om te configureren in welk menu de applicatie zal worden geïntegreerd en welke pictogrammen het zal tonen, dan zal het ons op het volgende scherm vragen om de txt- of html-bestanden toe te voegen met licentie-informatie, hulp en de tekst voor en na de installatie .

De Inno Setup-scripts zijn in secties gerangschikt. Elke sectie regelt een ander aspect van de installatie. Een sectie wordt gestart door de sectienaam tussen haakjes [] op te geven. Binnen elk onderdeel zullen we de uit te voeren acties specificeren.
Ten slotte zullen we de pictogrammen toevoegen en de lay-out van de menu's configureren. Aan het einde zullen we het script maken en we moeten het compileren vanuit het menu Build> Compile. Hiermee wordt een uitvoermap gegenereerd met het bestand setup.exe, het installatieprogramma.
Hier kunnen we het installatieprogramma zien uitgevoerd in Linux op Wine, daarom werkt het op zowel Windows als Linux.

Laten we het gegenereerde script analyseren


In definiëren configureren we de toepassingsgegevens met behulp van de #define-richtlijnen
 #define MyAppName "Tutorials" #define MyAppVersion "2.0" #define MyAppPublisher "Myempresa" #define MyAppURL "http://www.mycompany.com/" #define MyAppExeName "mycompany.exe" 
De sectie [Setup] bevat algemene parameters die worden gebruikt door het installatieprogramma en het verwijderingsprogramma. Beleid kan worden aangepast als een software-update of koppeling voor technische ondersteuning.
 [Setup] AppId = {{3502D097-DF67-49DD-B98B-59F0866126BB} AppName = {# MyAppName} AppVersion = {# MyAppVersion}; AppVerName = {# MyAppName} {#MyAppVersion} AppPublisher = {# MyAppPublisher} = AppPublisherL MyAppURL} AppSupportURL = {# MyAppURL} AppUpdatesURL = {# MyAppURL} DefaultDirName = {pf} \ {# MyAppName} DefaultGroupName = {# MyAppName} OutputBaseFilename = setup Compressie = lzma SolidCompression = ja 
In de sectie [Talen] definiëren we de installatietalen, hier zien we dat we Engels en Spaans gebruiken, rechtstreeks overgenomen uit de map Talen van de InnoSetup:
 [Talen] Naam: "Engels"; MessagesFile: "compiler: Default.isl" Naam: "Spaans"; MessagesFile: "compiler: Talen \ Spanish.isl" 
De sectie [Taken] is optioneel. Definieert alle aanpasbare configuratietaken die de gebruiker tijdens de installatie zal uitvoeren. Maak een menu, pictogrammen, koppel bestandsextensies aan onze applicatie.
 [Taken] Naam: "desktopicon"; Beschrijving: "{cm: CreateDesktopIcon}"; GroupDescription: "{cm: AdditionalIcons}"; Vlaggen: niet aangevinkt 
De parameter Vlaggen of Vlag is een set extra opties, gescheiden door spaties. De volgende opties worden ondersteund.
alleen te controleren: geeft aan dat als een component niet is aangevinkt, al zijn afhankelijkheden niet zijn aangevinkt.
eenmaal gecontroleerd: geeft aan dat de installatie van een component moet worden uitgeschakeld wanneer het installatieprogramma een eerdere versie van dezelfde applicatie vindt die al is geïnstalleerd, zodat de gebruiker kan beslissen of hij deze wil vervangen of niet.
herstarten: Geeft aan dat nadat een taak is uitgevoerd, de gebruiker wordt gevraagd het systeem opnieuw op te starten aan het einde van de installatie. Voorbeeld als een server of database is geïnstalleerd en we een herstart nodig hebben om deze beschikbaar te hebben.
niet aangevinkt: geeft aan dat de optie moet worden gedestilleerd en moet worden geselecteerd door de gebruiker.
De sectie [Bestanden] definieert instellingen en specificaties voor elk bestand in onze applicatie. De vlag isreadme geeft aan dat het bestand alleen-lezen is, terwijl onlyifdoesntexist aangeeft dat het bestand wordt gekopieerd zolang het niet bestaat.
 [Bestanden] Bron: "Z: \ mijnbedrijf \ dist \ mijnbedrijf.exe"; Bestemmingsmap: "{app}"; Vlaggen: Bron: "Z: \ mijnbedrijf \ dist \ help.txt"; Bestemmingsmap: "{app}"; Vlaggen: isreadme Bron: "Z: \ mijnbedrijf \ dist \ dbecompany.sqlite"; Bestemmingsmap: "{app}"; Vlaggen: alleen alsnietbestaat 
De sectie [Pictogrammen] geeft de iconen aan van elk menu, bureaublad of snelkoppeling
 [Pictogrammen] Naam: "{groep} \ {# MijnAppNaam}"; Bestandsnaam: "{app} \ {# MijnAppExeNaam}" Naam: "{commondesktop} \ {# MijnAppNaam}"; Bestandsnaam: "{app} \ {# MijnAppExeNaam}"; Taken: bureaubladpictogram 
De sectie [Uitvoeren] is optioneel en geeft aan welke programma's moeten worden uitgevoerd nadat de software is geïnstalleerd, maar voordat het installatieprogramma is voltooid. Hier kunnen we eventuele afhankelijkheden installeren, zoals Net Framework of Java SE Runtime Environment
 [Uitvoeren] Bestandsnaam: "{app} \ {# MijnAppExeNaam}"; Beschrijving: "{cm: LaunchProgram, {# StringChange (MyAppName, '&', '&&')}}"; Vlaggen: nu na installatie 
Enkele vlaggen die deze sectie ondersteunt zijn:
Nee wacht: geeft aan dat het installatieprogramma niet zal wachten tot het proces klaar is met uitvoeren voordat het doorgaat met de volgende taak [Uitvoeren] of de installatie voltooit.
na installatie: geeft het installatieprogramma de opdracht om een ​​selectievakje te maken om te informeren dat de installatie van de toepassing of een bepaald onderdeel is voltooid. De gebruiker kan dit selectievakje wissen of aanvinken en dus kiezen of deze taak moet worden verwerkt of niet. Dit is voor als we al een onderdeel hebben geïnstalleerd en we niet willen dat het het opnieuw installeert.
Andere secties die we kunnen configureren vanuit de Inno Setup Script-code zijn:
De sectie [Types] Deze sectie is optioneel. Hier definiëren we de installatie van bepaalde componenten op basis van configuratietypes, waarna deze wordt weergegeven op de pagina Componenten selecteren van de wizard. Tijdens het compileren wordt een set standaardconfiguratietypen gemaakt als u componenten definieert in een sectie [Componenten], waarna aan elke component een type wordt toegewezen.
De sectie [Types] is onder de sectie [Setup] geschreven.Een voordeel is dat we aangepaste typen kunnen maken voor installatie-opties, de bekendste is de volledige of volledige en aangepaste installatie.

Via de typen creëren we een parameter met zijn naam en kennen deze een beschrijving toe, vervolgens maken we labels voor componenten, wijzen we een beschrijving of naam toe en dat wat het type installatie zal zijn dat overeenkomt, bijvoorbeeld, de software zal worden geïnstalleerd in elk type installatie, maar geen hulp, dit kan worden gebruikt om verschillende componenten te installeren, afhankelijk van het type installatie.
 [Typen] Naam: "pro"; Beschrijving: "Professionele installatie" Naam: "KMO's"; Beschrijving: "MKB-installatie" Naam: "win"; Beschrijving: "Windows-installatie" Naam: "lin"; Beschrijving: "Linux-installatie" Naam: "persoonlijk"; Beschrijving: "Aangepaste installatie"; Vlaggen: iscustom [Componenten] Naam: "programma"; Beschrijving: "Tutorials"; Soorten: pro MKB persoonlijk; Naam: "sqlitewin"; Beschrijving: "Sqlite db"; Soorten: pro win Naam: "sqlitelin"; Beschrijving: "Sqlite db"; Typen: pro lin Naam: "help.htm"; Beschrijving: "Help"; Typen: pro [Bestanden] Bron: "Z: \ mijnbedrijf \ dist \ mijnbedrijfa.exe"; Bestemmingsmap: "{app}"; Componenten: Bronprogramma: "Z: \ mijnbedrijf \ dist \ sqlite.dllt; DestDir:" {app} "; Componenten: sqlitewin Bron:" Z: \ mijnbedrijf \ dist \ sqlite.so "; DestDir:" {app} " Componenten: sqlitelin 

Dus we kunnen de installatie van onze applicatie aanpassen, het script kan met meer complexiteit worden geprogrammeerd als we het nodig hebben.Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een ​​positief punt te geven

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave