Innehållsförteckning
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 .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.
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 = jaI 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: okontrolleratParametern 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: onlyifdoesntexistAvsnittet [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: desktopiconAvsnittet [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 postinstallNå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.
[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