Skapa installatörer med Inno Setup

Inno Setup låter dig konfigurera installationsprocessen som programvaran måste följa, med hjälp av en assistent eller guide och i mer avancerat läge med programmering av ett skript, som är textfiler med ett sekventiellt format som låter dig bestämma vilka steg som ska följas .

Inno Setup -skript är textfiler med ett .iss -tillägg. Skriptet styr alla aspekter av installationen. Den anger vilka filer som ska installeras och var, vilka menyer och mappar som måste skapas och vilka resurser programmet vi installerar kräver.
Skriptfiler är textfiler som kan skapas och redigeras från Inno Setup eller från vilken textredigerare som helst. Programvaran tillåter oss att kompilera iss -skriptfilen och som standard kommer det att tilldela namnet Setup.exe när det har kompilerats, därför kommer vi att ha ett komplett program, redo att distribuera och utföra installationen.
För att starta ett enkelt exempel kommer vi att börja, i det här fallet kommer vi att göra det från Linux med Vin och assistenten.

Nedan beskriver vi applikationsdata, applikationsnamn, version, företag som utvecklade det, webbplats.

Nästa steg blir att konfigurera i vilken mapp programmet ska installeras, som standard är det Programmapp eller Programfiler, både i Windows och i Linux med Wine finns den här mappen, om installationsmappen inte finns, programvaran kommer att skapa det.

Sedan måste vi tilldela vår körbara fil och dess beroenden eller bibliotek, här tar vi som ett exempel en programvara som vi hade utvecklat med Java och konverterade till exe med Launch4j i handledning Netbeans och Sqlite i tre lager - Del II

Nästa steg blir att konfigurera vilken meny programmet ska integreras i och vilka ikoner det kommer att visa, sedan på nästa skärm kommer det att be oss lägga till txt- eller html -filer med licensinformation, hjälp och text före och efter installationen .

Inno Setup -skripten är ordnade i sektioner. Varje sektion styr en annan aspekt av installationen. Ett avsnitt startas med att ange sektionsnamnet inom parentes []. Inom varje avsnitt kommer vi att specificera de åtgärder som ska utföras.
Slutligen lägger vi till ikonerna och konfigurerar menyernas layout. I slutet skapar vi manuset och vi måste kompilera det från menyn Bygg> Kompilera. Detta kommer att generera en Output -mapp med filen setup.exe, som är installationsprogrammet.
Här kan vi se installationsprogrammet köras i Linux på Wine, därför fungerar det på både Windows och Linux.

Låt oss analysera det genererade skriptet


I definiera konfigurerar vi applikationsdata med #define -direktiven
 #define MyAppName "Självstudier" #define MyAppVersion "2.0" #define MyAppPublisher "Myempresa" #define MyAppURL "http://www.mycompany.com/" #define MyAppExeName "mycompany.exe" 
Avsnittet [Setup] innehåller globala parametrar som används av installationsprogrammet och avinstalleraren. Policyer kan anpassas som en programuppdatering eller teknisk supportlänk.
 [Setup] AppId = {{3502D097-DF67-49DD-B98B-59F0866126BB} AppName = {# MyAppName} AppVersion = {# MyAppVersion}; AppVerName = {# MyAppName} {#MyAppVersion} AppPublisher = {# MyAppPublisher }Applubler} = App AppSupportURL = {# MyAppURL} AppUpdatesURL = {# MyAppURL} DefaultDirName = {pf} \ {# MyAppName} DefaultGroupName = {# MyAppName} OutputBaseFilename = setup Compression = lzma SolidCompression = ja 
I avsnittet [Språk] definierar vi installationsspråken, här ser vi att vi använder engelska och spanska, tagna direkt från mappen Språk i InnoSetup:
 [Språk] Namn: "engelska"; MessagesFile: "compiler: Default.isl" Namn: "spanish"; MessagesFile: "compiler: Languages ​​\ Spanish.isl" 
Avsnittet [Uppgif.webpter] är valfritt. Definierar alla anpassningsbara konfigurationsuppgif.webpter som användaren ska utföra under installationen. Skapa meny, ikoner, associera filtillägg till vår applikation.
 [Uppgif.webpter] Namn: "desktopicon"; Beskrivning: "{cm: CreateDesktopIcon}"; GroupDescription: "{cm: AdditionalIcons}"; Flaggor: okontrollerat 
Parametern Flags eller Flag är en uppsättning ytterligare alternativ åtskilda av mellanslag. Följande alternativ stöds.
checkableealone: indikerar att om en komponent är avmarkerad kommer alla dess beroenden att vara avmarkerade.
kollade en gång: indikerar att installationen av en komponent ska vara avmarkerad när installationsprogrammet hittar en tidigare version av samma program som redan är installerat, så att användaren kan bestämma om den ska bytas ut eller inte.
omstart: Indikerar att efter att en uppgif.webpt har utförts ombeds användaren att starta om systemet i slutet av installationen. Exempel om en server eller databas är installerad och vi kräver en omstart för att ha den tillgänglig.
okontrollerad: indikerar att alternativet måste destilleras och måste väljas av användaren.
Avsnittet [Filer] definierar inställningar och specifikationer för varje fil i vår applikation. Isreadme-flaggan indikerar att filen är skrivskyddad, medan onlyifdoesntexist kommer att indikera att filen kommer att kopieras så länge den inte finns.
 [Filer] Källa: "Z: \ mycompany \ dist \ mycompany.exe"; DestDir: "{app}"; Flaggor: Källa: "Z: \ mycompany \ dist \ help.txt"; DestDir: "{app}"; Flaggor: isreadme Källa: "Z: \ mycompany \ dist \ dbecompany.sqlite"; DestDir: "{app}"; Flaggor: onlyifdoesntexist 
Avsnittet [Ikoner] anger ikonerna för varje meny, skrivbord eller genväg
 [Ikoner] Namn: "{group} \ {# MyAppName}"; Filnamn: "{app} \ {# MyAppExeName}" Namn: "{commondesktop} \ {# MyAppName}"; Filnamn: "{app} \ {# MyAppExeName}"; Uppgif.webpter: desktopicon 
Avsnittet [Kör] är valfritt och anger vilka program som ska köras efter att programvaran har installerats, men innan installationsprogrammet är klart. Här kan vi installera beroenden om sådana finns, till exempel Net framework eller Java SE Runtime Environment
 [Kör] Filnamn: "{app} \ {# MyAppExeName}"; Beskrivning: "{cm: LaunchProgram, {# StringChange (MyAppName, '&', '&&')}}"; Flaggor: nowait postinstall 
Några flaggor som den här sektionen stöder är:
Nej vänta: anger att installationsprogrammet inte väntar på att processen ska slutföra körningen innan han fortsätter till nästa uppgif.webpt [Kör] eller för att slutföra installationen.
efterinstallation: instruerar installationsprogrammet att skapa en kryssruta för att informera om att installationen av programmet eller en viss komponent är klar. Användaren kan avmarkera eller markera den här kryssrutan och därför välja om denna uppgif.webpt ska bearbetas eller inte. Detta är till för om vi redan har en komponent installerad och vi inte vill att den ska installeras igen.
Andra avsnitt som vi kan konfigurera från Inno Setup Script -kod är:
Avsnittet [Typer] Det här avsnittet är valfritt. Här definierar vi installationen av vissa komponenter enligt konfigurationstyper, sedan visas den på sidan Välj komponenter i guiden. Under sammanställningen skapas en uppsättning standardkonfigurationstyper om du definierar komponenter i ett avsnitt [Komponenter], sedan tilldelas varje komponent en typ.
Avsnittet [Typer] skrivs under avsnittet [Inställningar]. En fördel är att vi kan skapa anpassade typer för installationsalternativ, det mest kända är hela eller fullständig och anpassad installation.

Genom typerna skapar vi en parameter med dess namn och tilldelar den en beskrivning, sedan skapar vi etiketter för komponenter, vi tilldelar en beskrivning eller ett namn och det som kommer att vara den typ av installation som motsvarar, till exempel kommer programvaran att installeras i vilken typ av installation som helst, men inte hjälp, den kan användas för att installera olika komponenter beroende på typ av installation.
 [Typer] Namn: "pro"; Beskrivning: "Professionell installation" Namn: "SMEs"; Beskrivning: "SME Installation" Namn: "win"; Beskrivning: "Windows Installation" Namn: "lin"; Beskrivning: "Linux Installation" Namn: "personlig"; Beskrivning: "Anpassad installation"; Flaggor: iscustom [Components] Namn: "program"; Beskrivning: "Handledning"; Typer: personliga för små och medelstora företag; Namn: "sqlitewin"; Beskrivning: "Sqlite db"; Typer: pro win Namn: "sqlitelin"; Beskrivning: "Sqlite db"; Typer: pro lin Namn: "help.htm"; Beskrivning: "Hjälp"; Typer: pro [Filer] Källa: "Z: \ mycompany \ dist \ mycompanya.exe"; DestDir: "{app}"; Komponenter: Källprogram: "Z: \ mycompany \ dist \ sqlite.dllt; DestDir:" {app} "; Komponenter: sqlitewin Källa:" Z: \ mycompany \ dist \ sqlite.so "; DestDir:" {app} "; Komponenter: sqlitelin 

Så vi kan anpassa installationen av vår applikation, manuset kan programmeras med mer komplexitet när vi behöver det.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng
wave wave wave wave wave