Een Windows-toepassingsdistributie maken in Inno Setup. Inno Setup Installatieprogramma maken

Als u besluit uw programma's te gaan distribueren, kunt u niet zonder een installatiedistributiekit. Tegenwoordig hebben bijna alle programma's een installatieprogramma, meestal Setup.exe genoemd. In dit artikel zullen we een voorbeeld bekijken van hoe u een installatieprogramma voor een Access-toepassing kunt bouwen en enkele van de functies analyseren die u moet kennen.

Zoals eerder besproken, staat Access u niet toe om een ​​uitvoerbaar bestand te maken dat zonder Access kan werken. Maar tegelijkertijd stelt Microsoft voor om het pakket te gebruiken Microsoft Office-ontwikkelaar, die een licentie omvat om het programma te distribueren Microsoft Access-runtime... Ik zal hier nader op ingaan.

De Microsoft Access-runtime is een versie van Access waarmee gebruikers een Access-toepassing kunnen uitvoeren, maar niet wijzigen. Het is alleen zinvol om Microsoft Access runtime te installeren in plaats van de volledige versie als u zuiverheid van de licentie nodig hebt en de client waarop uw database wordt uitgevoerd geen Access-licentie heeft. In dit geval moet u kopen ODE (Office Developer Edition). Dan krijg je, samen met de aankoop, wat extra tools en vooral: RECHTSAF om de Runtime-versie van Access op de clients te installeren, samen met de door u ontwikkelde basis. In dat geval heeft de klant geen aanspraak op onrechtmatig gebruik van Access. Anders moet elke klant een MS Access-licentie kopen.

Het ODE-pakket bevat een "distributiebuilder" die uw MDB- en runtime-versie in het diistibut bevat. Alle bibliotheken die nodig zijn om Runtime te maken, bevinden zich al in de volledige versie van Access (zelfs zonder ODE). Maar er is één MAAR (dit is voor degenen die zich zorgen maken over de gelicentieerde "cheat"):

Als u het niet officieel koopt, hebben klanten nog steeds niet het recht om zelfs de Runtime-versie te gebruiken.

De volgende gedachte kan opkomen: Wat als u erachter komt welke bestanden Access nodig heeft om te werken en deze op te nemen in de installatiedistributie? Het is mogelijk, maar het lost het licentieprobleem niet op. Daarnaast zul je een vrij complex installatieprogramma moeten maken, de bestaande componenten moeten controleren en de ontbrekende moeten installeren / registreren. Bovendien is het in het laatste geval mogelijk, met onbekwame acties, zelfs het systeem te vernietigen.

In het algemeen, als we kijken naar de echte situaties met de verkoop van applicaties op Access, dan kopen slechts een paar ontwikkelaars (we hebben het over Rusland) daadwerkelijk licentiepakketten. In de regel zijn dit degenen voor wie "op een bepaald niveau van bedrijfsontwikkeling, de kwestie van kopen - niet kopen zijn relevantie verliest" - of, eenvoudiger, die het zich kan veroorloven een licentiepakket te kopen voor $ 600 - $ 1000. Het is dan interessant om te luisteren naar hun vervloekingen op de forums over het werk van dergelijke programma's. Voor zover ik heb begrepen, zijn er dezelfde "jambs" als in de illegale versies. Daarom zal ik u niet aansporen om alleen gratis of illegale versies van Office voor uw programma's te gebruiken, maar ik zou ook niet aanraden de gelicentieerde versie te gebruiken (zie hierboven).

Interessant is dat de volledige versie van Access in runtime-modus kan worden uitgevoerd door de schakeloptie / runtime op de opdrachtregel op te geven. Maak bijvoorbeeld een snelkoppeling op het bureaublad, klik er met de rechtermuisknop op, in het dialoogvenster dat in het objectveld verschijnt, schrijf iets als dit: (dit is voor Office 2000 - XP, en voor 2003 moet u het repareren in plaats van Office10 - Office11)

"C: \ Program Files \ Microsoft Office \ Office10 \ MSACCESS.EXE" "D: \ Databases \ My Base.mdb" / runtime

en in het veld "Werkmap":

Laten we nu de applicatie starten via deze snelkoppeling. Het Access-projectvenster wordt geopend, maar de Access-snelkoppeling en de standaardwerkbalken zijn er niet meer. Dit is de runtime-modus.

Voor beginnende ontwikkelaars is het distribueren van Access-applicaties via Microsoft Office Developer nauwelijks een optie. Het kost tenslotte geld, en geen kleintjes. We zullen een andere manier overwegen, met behulp van het gratis installatieprogramma Inno setup... Er zijn natuurlijk andere als betaalde, bijvoorbeeld InstallShield en gratis installateurs. Ze verschillen in het gemak van het werk, de grootte van de gemaakte distributiekit.

Inno setup- Vrij herdistribueerbaar installatieprogramma voor Windows-programma's. Engelse versies verschenen in 1997, nu is Inno Setup vertaald in verschillende talen en kunnen installatieprogramma's in meer dan 20 talen worden gemaakt. Inno Setup presteert beter dan veel commerciële installatieprogramma's in functies, stabiliteit en bestandsgrootte.

Belangrijkste kenmerken:

  • het programma kan informatie over bestandsversies vergelijken
  • bestanden in gebruik verplaatsen
  • registreer DLL / OCX / FNT / TLB en typ bibliotheken
  • lettertypen installeren
  • controleert of bepaalde programma's actief zijn
  • snelkoppelingen maken (bijvoorbeeld via het startmenu of op het bureaublad)
  • schrijven naar ini-bestanden
  • ingebouwde Pascal-scriptmachine
  • ondersteunt meertalige installatie
  • standaard installatie en verwijdering
  • alle code is beschikbaar (Borland Delphi 2.0-5.0)
  • wachtwoordbeveiliging voor installatie
  • indien geannuleerd tijdens de uitvoering, worden alle acties gereset
  • ondersteunt alle 32-bits versies van Windows (95, 98, 2000, 2003, XP, Me, NT 4.0)
  • creëert de creatie van één exe-bestand, wat het proces van het installeren van uw programma aanzienlijk vereenvoudigt
  • standaard Windows 2000 / XP-interface
  • gebruikersgericht (bijv. volledig, minimaal, aangepast)
  • alle hulpprogramma's voor het verwijderen
  • bestandsinstallatie: ingebouwde ondersteuning voor "deflate", bzip2, 7-zip LZMA-compressiebestanden

Ook vanaf versie 2.0.6 biedt Inno Setup volledige ondersteuning voor MBCS. Eerdere versies bevatten de laatste eigenschap niet. Het ondersteunt echter geen webinstallatie.

Het bijzondere van het maken van een installatieprogramma in Inno Setup is dat installatieprogramma's worden gemaakt met behulp van scripts - eenvoudige ASCII-tekstbestanden die lijken op .INI-bestanden. Scripts zijn makkelijker te bewerken dan bijvoorbeeld werken met de Installshield-interface. Scripts hebben de extensie ".iss" (inno setup script). Het bevat alle parameters van het installatieprogramma en tijdens de installatie associeert het programma zichzelf met deze bestanden. Het script is verdeeld in secties, waarvan de namen tussen vierkante haken zijn geschreven. Binnen de secties zijn er trefwoorden en richtlijnen die de compiler kan lezen en uitvoeren.

Opmerkingen beginnen met een puntkomma aan het begin van een regel en kunnen overal in het script worden geplaatst. Opmerkingen blokkeren is niet mogelijk, evenals een opmerking in het midden van een regel. Dit laatste wordt toegestaan ​​door de compiler, maar leidt later, wanneer het wordt uitgevoerd, tot een fout.

; - Sample1.iss -
; Demonstreert het kopiëren van 3 bestanden en het maken van een pictogram.

De volgorde van de secties maakt niet uit. Allemaal (behalve ) zijn willekeurig. Aan een trefwoord wordt een waarde toegekend met het gelijkteken (=).

Routebeschrijvingen bestaan ​​uit een of meer parameters en hun opties, evenals vlaggen vlaggen... De parameter bestaat op zijn beurt uit een naam gevolgd door een dubbele punt. : en waarden. Parameters, opties en vlaggen worden van elkaar gescheiden door puntkomma's ;

Laten we eens kijken naar de belangrijkste secties:

Sectie

Betekenis

bevat instructies over het gedrag van de installatieroutine en hoe deze eruit moet zien. De trefwoorden AppName, AppVerName en DefaultDirName zijn vereist. Alle andere - indien nodig
Dit bevat de bestanden voor setup
sneltoetsen (pictogrammen)
Verhouding van componenten tot type installatieroutine
maakt het mogelijk om nieuwe lege mappen te maken
maakt vermeldingen in INI-bestanden
de eerste stap tijdens de installatie, systaxis komt overeen met de sectie
staat specifieke wijzigingen in de tekst toe
schrijft om te registreren
voert andere programma's uit nadat de gegevens met succes zijn gekalibreerd, maar voordat het dialoogvenster wordt gesloten
staat extra acties in setup toe
stelt het instellingstype in
laatste bewerking tijdens het verwijderen. Op deze manier worden de mappen en/of bestanden verwijderd.
eerste bewerking tijdens het verwijderen. Systaxis komt overeen met de sectie
bevat informatie over de taal. meestal niet gebruikt

Inno Setup werkt binnen een script met verschillende vooraf gedefinieerde constanten, die meestal paden bevatten. manier van schrijven: (naam)... Sommige constanten zoals (app) en (groep) kunnen/moeten door de gebruiker worden gedefinieerd. Iedereen die de constanten zelf wil definiëren, moet zich wenden tot de processor van Alex Yackimoff.

Dit zijn de basisconstanten van Inno Setup:

constante

voorbeeld

(winnen) pad naar Windows-map / map C: \ Windows
(sys) pad naar de Windows-systeemmap, met name de System32-map C: \ Windows \ Systeem of C: \ Windows \ System32
(app) pad naar je eigen applicatie (programma)
(pf) pad naar programmamap C: \ Programma
(zie) pad naar gedeelde gegevens C: \ Programma \ Gemeinsame Dateien
(dao) komt overeen (zie) \ Microsoft Shared \ DAO C: \ Program \ Gemeinsame Dateien \ Microsoft Shared \ DAO
(src) pad naar de map van de installatieroutine, op het moment van uitvoering van de setup R: \
(groep) groep programma's voor het startmenu

Laten we dus eens kijken naar de taken die moeten worden opgelost (laten we alleen de minimale definiëren). Onze installateur moet het volgende doen:

Pak bestanden uit naar de gewenste locaties
Maak een map in de programmadirectory (map "Cop" - voor het opslaan van databaseback-ups)
Maak een startmenu voor toepassingen in Start - Alle programma's, evenals een pictogram op het bureaublad

Dit is het minimaal vereiste. Maar dit zijn natuurlijk niet alle features van Inno Setup. Het is niet voor niets dat veel ontwikkelaars het gebruiken. Maar in dit artikel beperk ik me tot alleen dit, degenen die de mogelijkheden van het programma dieper willen bestuderen, kunnen het helpsysteem raadplegen. Er zijn veel links op internet, zowel naar het programma als naar vertalingen van de help. Bijvoorbeeld Inno Setup 5.1.6. en de hulp ervoor kunt u hier downloaden ... Engelse site van het programma http://www.innosetup.com

Probeer eerst te experimenteren door een installatieprogramma te maken met behulp van de wizard en vervolgens de structuur van het resulterende script te onderzoeken. Kortom, ik denk dat het niet nodig is om in detail te beschrijven wat waar moet worden geklikt. Inno Setup is zo eenvoudig te leren dat het gemakkelijk te leren is wat de "wetenschappelijke poke-methode" wordt genoemd. Hier is bijvoorbeeld een installatiescript dat de eerder gedefinieerde taken uitvoert (alle distributiebestanden bevinden zich in de map D:\Setup.)


AppName = Mijn programma
AppVerName = Mijn programma. Versie 1.0.
AppPublisher = MyProgram, Inc.
AppPublisherURL = http: //MyMySoft.ru/
AppSupportURL = http: //MyMySoft.ru/
AppUpdatesURL = http: //MyMySoft.ru/
DefaultDirName = (pf) \ MyProgram
DisableDirPage = nee
DefaultGroupName = Mijn programma
DisableProgramGroupPage = ja
LicenseFile = D: \ Setup \ license.txt
InfoAfterFile = D: \ Setup \ readme.txt
AlwaysCreateUninstallIcon = ja


Naam: "desktopicon"; Beschrijving: "Snelkoppeling maken op & Desktop"; GroupDescription: "Extra sneltoetsen:"


Bron: "D: \ Setup \ Server.mdb"; Bestemmingsmap: "(app)"; Bestemmingsnaam: "Server.mdb";
Bron: "D: \ Setup \ license.txt"; Bestemmingsmap: "(app)";
Bron: "D: \ Setup \ readme.txt"; Bestemmingsmap: "(app)";
Bron: "D: \ Setup \ Log.JPG"; Bestemmingsmap: "(app)";
Bron: "D: \ Setup \ Log.ico"; Bestemmingsmap: "(app)";
Bron: "D: \ Setup \ Base.mdb"; Bestemmingsmap: "(app)";


Bestandsnaam: "(app) \ MijnProg.url"; Sectie: "InternetSnelkoppeling"; Sleutel: "URL"; Tekenreeks: "http://MyMySoft.ru/"


Naam: "(app) \ Cop"


Naam: "(groep) \ Mijn programma"; Bestandsnaam: "(app) \ Base.mdb"; WorkingDir: "(app)"; IconBestandsnaam: (app) \ Log.ico
Naam: "(groep) \ Programmasite"; Bestandsnaam: "(app) \ MijnProg.url"
Naam: "(userdesktop) \ Mijn programma"; Bestandsnaam: "(app) \ Base.mdb"; WorkingDir: "(app)"; IconBestandsnaam: (app) \ Log.ico; Taken: desktopicon

Een voorbeeld van hoe het allemaal werkt kunt u hieronder downloaden.

  • Neem contact op met "Interface" voor meer informatie / over de aankoop van producten

Downloads

U hebt een uitstekend programma geschreven en het blijft om er een origineel en waardig installatieprogramma voor te maken, zodat de gebruiker uw toepassing gemakkelijk en eenvoudig met een paar klikken op zijn computer kan installeren? Hoe maak je een installatieprogramma software? Maak kennis met - gratis programma helpen maak een kwaliteitsinstallatieprogramma voor toepassing draaien in de besturingssysteemomgeving ramen... Het resultaat van het werk zal een zijn EXE - programma-installatieprogramma. Nutsvoorziening heeft volop kansen om een ​​installatiebestand voor het programma te maken, presteert in sommige gevallen aanzienlijk beter dan commerciële softwareverpakkingsproducten. Programma bevat een wizard voor het maken van een installatiepakket ( tovenaar), waardoor u snel en gemakkelijk kunt maak een distributiekit van het programma.

Distributie maken

Inno Setup is eenvoudig te configureren, heeft een duidelijke scriptstructuur, ondersteunt encryptie, scripts in de taal Pascal, een wachtwoord instellen, lezen en schrijven vanuit het register, taken instellen die moeten worden uitgevoerd nadat de installatie is voltooid. Met de optie installatietype kunt u opties maken zoals: volledige, minimale of aangepaste installatie met een op maat gemaakte set. Inno Setup ondersteunt creatie van meertalige softwaredistributies... Alle kenmerken en instellingen van het toekomstige installatieprogramma van het programma worden opgeslagen in een script (installatiescript), dat moet worden gecompileerd nadat het is geschreven. Het programma bevat kant-en-klare voorbeelden van scripts, gericht op verschillende taken die de gemaakte distributie zal uitvoeren.


Installatiescript

Installatiescript het is een gewoon tekstbestand met de extensie INI onderverdeeld in secties (sectienamen staan ​​tussen vierkante haken:,, enz.). Het script bevat alle benodigde opties en instellingen voor de distributiekit die wordt gemaakt, zoals informatie over de auteur, naam en versie van het programma, toepassingsbestanden, installatiemap en andere. Als je niet genoeg wizard hebt om een ​​distributiekit te maken of geen tijd hebt om de parameters en sectieconstanten te bestuderen, is er een grote massa kant-en-klare scripts voor Inno Setup op internet.


Installatiepakketten, gemaakt door het Inno Setup-programma, werken feilloos, zijn goed ontworpen en voldoen aan alle noodzakelijke vereisten voor software-installatie. Inno Setup is professioneel, bekwaam, gratis en betrouwbaar een hulpmiddel voor elke programmeur. Het te downloaden archief bevat een vertaald in Helpbestand in de Russische taal (helpen) programma's

Officiële site: http://www.jrsoftware.org
besturingssysteem: Windows Alles
Ondersteunde talen: Engels
Versie: 5.4.2 (a)
Vergunning:gratis software (is gratis)

Bestandsgrootte 1.79 Mb

Voor het gemak van het installeren van uw programma's op de computers van gebruikers, moet u een distributiekit maken. Vandaag wil ik het hebben over een zeer krachtige en gratis tool voor het maken van distributies voor Windows - Inno Setup.

Over Inno Setup

Inno setup gelanceerd in 1997, concurreert vandaag en overtreft zelfs betaalde installateurs op het gebied van functies en stabiliteit. De startpagina van het project bevindt zich.

Dit zijn de belangrijkste kenmerken van het installatieprogramma:

      • Ondersteuning voor alle versies ramen, beginnend met Windows 2000 met inbegrip van: Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP, Windows Server 2003 en Windows 2000... Er zijn echter geen updatepakketten vereist.
      • Uitgebreide ondersteuning voor het installeren van 64-bits applicaties op 64-bits versies ramen... Ondersteuning voor architectuur x64 en Itanium(als gebruikt Windows Server 2003 op de Itanium architectuur, is Service Pack 1 of hoger vereist om de 64-bits modus te installeren).
      • De mogelijkheid om een ​​distributie te maken die bestaat uit een enkel EXE-bestand voor gemakkelijke distributie op internet. Partitionering in schijven wordt ook ondersteund.
      • Standaard setup-wizard-interface in stijl Windows 2000 / XP.
      • Aanpasbare installatietypes zoals: Vol, Compact, Selectief.
      • Uitgebreide verwijderingsopties.
      • Bestanden installeren: Inclusief geïntegreerde compressie-ondersteuning leeglopen, bzip2 en 7-Zip LZMA / LZMA2... Het installatieprogramma kan bestandsversies vergelijken, gebruikte bestanden vervangen, algemene bestandstelling gebruiken, log DLL / OCX en type bibliotheken en installeer lettertypen.
      • Maak overal snelkoppelingen, inclusief start menu en Bureaublad.
      • Creatie van elementen register en INI-bestanden.
      • Voer andere programma's uit voor, tijdens en na de installatie.
      • creatie meertalige distributies, inclusief talen die van links naar rechts worden geschreven.
      • creatie wachtwoordbeveiligde en versleutelde distributies.
      • Steun digitale handtekening bij het installeren en verwijderen.
      • Verborgen installatie en verwijdering.
      • Steun Unicode.
      • Ingebouwde preprocessor voor extra aanpassing tijdens het compileren.
      • Ingebouwde scriptengine Pascal voor aanvullende stappen tijdens installatie en verwijdering.
      • gratis broncode ( Borland Delphi 2.0-5.0 en 2009 ).

Groot pluspunt Inno setup is dat het zelfs voor commercieel gebruik absoluut gratis kan worden gebruikt. Wel kunt u als dank of ter ondersteuning van de installateur een donatie doen. Er is ook een lijst van iedereen die $ 100 of meer heeft gedoneerd.

Zo is de startpagina van de standaard installatiewizard voor een distributiekit gemaakt met behulp van Inno setup.

Over het maken van een distributie in Inno Setup

Een distributie bouwen met behulp van Inno setup gebeurt als volgt:

1. Eerst creëer je Inno Setup-script. Inno Setup-script Is een tekstbestand met de extensie .iss, die de eigenschappen van de distributie bevat en een reeks acties die moeten worden uitgevoerd tijdens installatie en verwijdering. Het script kan worden gemaakt met behulp van een standaardeditor Inno setup(zie afbeelding) of met behulp van een van de externe editors zoals Inno Script Studio of ISTool... In dit artikel zal ik overwegen om alleen de standaardeditor te gebruiken Inno setup.

2. Vervolgens compileer je het script om de distributie te krijgen.
3. Na compilatie kunt u de resulterende distributie testen en debuggen door installatie en verwijdering uit te voeren.

Inno Setup installeren

Om distributies te bouwen met Inno setup, installeer gewoon de compiler Inno setup naar jouw computer. De distributiekit kan worden gedownload. Je kunt een link vinden om de nieuwste stabiele versie te downloaden in het gedeelte Stabiele release. Op het moment van schrijven, de nieuwste versie Inno setup was 5.5.5 , zie de foto. Om de distributiekit te downloaden, klikt u op de link “ Willekeurige site"Tegengesteld aan de versie met ondersteuning Unicode(het dossier isetup-5.5.5-unicode.exe) of zonder ( ANSI versie - bestand isetup-5.5.5.exe). Om problemen met het weergeven van het Cyrillische alfabet te voorkomen, is het beter om meteen te gebruiken Unicode-optie Inno setup.

Als u uw toekomstige distributie gaat versleutelen, dan is de versleutelingsmodule ISCrypt.dll je moet het apart downloaden in het gedeelte Encryptiemodule, zie de afbeelding (hieronder zie je een link naar de broncodes van deze module - ISCrypt.zip).

Op dezelfde pagina in de sectie QuickStart Pack vindt u een link naar distributies ispack-5.5.5.exe en ispack-5.5.5-unicode.exe voor installatie Inno setup samen met Inno Script Studio, zie de foto. Inno Script Studio Is de ontwikkeling van een derde partij ( Kymoto-oplossingen), die u een eigen gebruiksvriendelijke interface biedt en de mogelijkheid biedt om uw installatieprogramma tijdens runtime te debuggen. Deze distributie biedt ook aan om de coderingsmodule te downloaden en te installeren ISCrypt.dll automatisch.

Naast al het bovenstaande heeft de downloadpagina een Beta Release-sectie voor het downloaden van bètaversies Inno setu p, en om de broncode te downloaden, waar ik me niet op zal concentreren.

Als u meer geavanceerde scripteditors gaat gebruiken Inno setup, dan bent u ook geïnteresseerd in de pagina Inno Setup Third-Party Files met een lijst met ontwikkelingen van derden. Hier zijn enkele ontwikkelingen van derden die we kunnen gebruiken in combinatie met: Inno setup:

      • Inno Script Studio is een gebruikersinterface en debugger. Geïnstalleerd met behulp van de distributie QuickStart-pakket(zie hierboven) of een aparte distributiekit die u kunt downloaden van de site van de ontwikkelaar. Er is russificatie.

      • Visual & Installer is een betaalde plug-in voor: Visuele studio(ondersteund Visual Studio 2005, 2008 , 2010 , 2012 en 2013 ) om distributies mee te bouwen Inno setup... Ook Visueel & Installateur bevat meester Wizard Grafisch installatieprogramma, waarmee u thematische distributies kunt maken (zie voorbeelden).

    • Inno Download Plugin - bibliotheek en script Inno setup zodat u bestanden kunt downloaden tijdens de installatie van uw distributie. Er is ondersteuning voor de Russische taal. Ondersteunde protocollen FTP, HTTP en HTTPS.

      • InnoTools Downloader is een andere optie vergelijkbaar met Inno Download-plug-in, ook voor het downloaden van bestanden tijdens de installatie. Maar er is hier geen lokalisatie, en alleen FTP en HTTP.
      • VCL-stijlen voor Inno Setup / ISSkin / Graphical Installer (de laatste betaalde tool) - tools om het uiterlijk van de installatiewizard van uw distributie te wijzigen.

      • InnoScript - maakt automatisch een scriptbestand Inno setup (.iss) per projectbestand Visuele basis (.vbp of .vbproj). Er is russificatie.

      • - maakt een distributiekit voor het project Visuele basis uit ontwikkelomgeving Visual Basic 6.0.

      • - staat per bestand toe Delphi projecteren ( .dpr) of door het bibliotheekprojectbestand Delphi (.dpk) maak een lijst met afhankelijkheden die nodig zijn om een ​​distributie te maken. Met project Delphi XE3 dit hulpprogramma weigerde voor mij te werken.
      • Inno Setup Script #Includes is een bibliotheek met functies die u tijdens de installatie kunt gebruiken. De lijst met functies kan worden bekeken.
      • Inno Setup Easy Translator - Taalbestandseditor Inno setup (.isl). Deze site werkt sinds 2013 niet meer, maar je hoeft niet boos te worden, want je kunt eenvoudig taalbestanden maken en bewerken in elke teksteditor.
      • UninsHs - een extensie waarmee u ondersteuning kunt toevoegen voor " Repareren / wijzigen / verwijderen"In uw toepassingen.

Om de een of andere reden zijn er nog steeds geen bekende ontwikkelingen in deze lijst ( de lijst is bijgewerkt op 13.04.2015):

      • - gebruikersinterface voor het werken met een script Inno setup... Dit programma lijkt erg op: Inno Script Studio... Als je zoekt, kun je Russification vinden, zie de afbeelding.

      • InnoIDE- een andere gebruikersinterface voor het werken met een script Inno setup... site InnoIDE het hield op te bestaan ​​rond augustus 2012 (www.innoide.org), dus het heeft geen zin om deze ontwikkeling te gebruiken. Maar het archief van de site is bewaard gebleven, dat kan worden bekeken. U kunt daar ook de distributiekit downloaden. Russificatie voor InnoIDE is te vinden op internet.

      • InnoSetup Script Joiner - hulpprogramma dat meerdere scripts combineert Inno setup in een.
      • (Inno setup uitpakker) - uitpakprogramma voor distributies gemaakt met Inno setup... Console applicatie.
      • InnoExtractor is een andere uitpakker, maar deze heeft een gebruikersinterface. Er is russificatie. Hij ging perfect om met mijn versleutelde testdistributie (zie de afbeelding). Zoals je kunt zien, extraheert het absoluut alle bestanden, inclusief de bestanden die door het installatieprogramma worden gebruikt, en zelfs het Inno Setup-scriptbestand.

Nadat u de vereiste functionaliteit hebt bepaald, kunt u de installatie starten. Hier zal ik alleen de installatie beschouwen Inno setup + Inno Script Studio het pakket gebruiken QuickStart-pakket(het dossier ispack-5.5.5-unicode.exe). Hoewel het geen zin heeft om alle stappen in detail te beschrijven, zal ik er slechts op enkele stilstaan. Vinkje " Download en installeer Inno Script Studio"Moet aanwezig zijn als je wilt installeren Inno Script Studio, vinkje " Installeer Inno Setup Preprocessor"- om de preprocessor te installeren, controleer de" Download en installeer coderingsondersteuning"- om de module te installeren ISCrypt.dll om de distributie te versleutelen.

Inno Setup Compiler voor de eerste keer starten

Enkel programmavenster Inno setup Is het compilervenster. De compiler wordt gestart vanuit het startmenu. Bij de eerste keer opstarten wordt u gevraagd een leeg script te maken, de scriptwizard uit te voeren of de voorbeelden of laatst gebruikte bestanden te openen.

Als je geen ervaring hebt met Inno setup, dan komen voorbeelden goed van pas. Laten we een voorbeeld openen, op de knop "OK" klikken en een van de voorbeelden selecteren. Nadat het voorbeeld is geopend, kunt u evalueren hoe een eenvoudig script eruitziet. Inno setup... Merk ook op dat de compiler-interface heel eenvoudig is en dat u het hele script met de hand moet schrijven. Je hebt hier alleen hulp en voorbeelden.

De wizard gebruiken om een ​​Inno Setup-script te maken

Nieuw script maken Inno setup u kunt helemaal opnieuw beginnen of u kunt de scriptwizard gebruiken. Ik zal bijvoorbeeld een distributiekit maken om het programma te installeren MijnProg.exe, die zich in de map met voorbeelden bevindt (samen geïnstalleerd met Inno setup). Bij het opstarten toont het programma twee vensters en wordt afgesloten.

Om het scriptwizardvenster te openen, klikt u op het menu-item " Bestand -> Nieuw"Of selecteer in het welkomstvenster de optie" Maak een nieuw scriptbestand met behulp van de Script Wizard" en druk op " oke". Het eerste scherm van de wizard is met een welkomstscherm. Druk hier " Volgende>».

Voer op het tweede scherm de naam van de applicatie in ( Naam van de toepassing), applicatie versie ( Applicatie versie), applicatie-uitgever ( Uitgever van applicatie) en het adres van de applicatiesite ( Applicatiewebsite). Verplichte velden zijn vetgedrukt in de wizard en de rest kan leeg worden gemaakt.

In de volgende stap kies je een map voor je applicatie. Zoals u op de afbeelding kunt zien, is dit standaard een map met dezelfde naam als de naam van de toepassing en wordt deze in de map gemaakt Programmabestanden... Vinkje " Gebruiker toestaan ​​om de applicatiemap te wijzigen"Hiermee kan de gebruiker de map wijzigen tijdens het installatieproces. En bij het installeren van de kauw " De applicatie heeft geen map nodig De applicatiemap wordt helemaal niet gemaakt.

Als uit de vervolgkeuzelijst " Basismap van toepassingsbestemming"Jij kiest" (Aangepast)", Dan kunt u in het veld net onder u een willekeurig pad opgeven. Om bijvoorbeeld uw toepassingsmap op het systeemstation te laten staan, moet u " (sd)».

Zoals je kunt zien, heb ik gespecificeerd " (sd)" in plaats van " C:", Omdat op verschillende computers de systeemschijf anders kan zijn. algemeen in Inno setup je zult heel vaak constanten gebruiken zoals " (sd)". Alle constanten zijn omgeven door accolades en dat zijn er veel. Hier is een volledige lijst van constanten met een korte beschrijving (zie de volledige beschrijving in de sectie " constanten»In de hulp):

Directory constanten:

      • (app)- applicatiemap, bijvoorbeeld "C: \ Porgram Files \ My Program".
      • (winnen)- Windows-map, bijvoorbeeld "C: \ WINDOWS".
      • (sys)- de System32-directory, bijvoorbeeld "C: \ WINDOWS \ SYSTEM".
      • (src)- de directory waar de distributiebestanden zich bevinden (dit is een tijdelijke map met uitgepakte distributiebestanden).
      • (sd)- systeemstation, bijvoorbeeld "C:".
      • (pf)- toepassingsmap, bijvoorbeeld "C: \ Program Files (x86)" (in 64-bits modus - dit is de map voor 64-bits toepassingen). In 32-bits modus is deze constante gelijk aan de constante (pf32), en in 64-bit - (pf64).
      • (zie)- een map met algemene bestanden, bijvoorbeeld "C: \ Program Files (x86) \ Common Files". In 32-bits modus is deze constante gelijk aan de constante (cf32), en in 64-bit - (cf64).
      • (tmp)- tijdelijke map die wordt gebruikt tijdens installatie of verwijdering (de mapnaam heeft de indeling "C: \ WINDOWS \ TEMP \ IS-xxxxx.tmp").
      • (lettertypen)- map met lettertypen.
      • (dotnet11)- hoofdmap van .NET Framework 1.0.
      • (dotnet20)- hoofdmap van .NET Framework 2.0. In 32-bits modus is deze constante gelijk aan de constante (dotnet2032), en in 64-bit - (dotnet2064).
      • (dotnet40)- hoofdmap van .NET Framework 4.0. In 32-bits modus is deze constante gelijk aan de constante (dotnet4032), en in 64-bit - (dotnet4064).

Omgevingsmapconstanten:

      • (groep)- het pad naar de menumap "Start", toegankelijk voor alle gebruikers.
      • (lokale app-gegevens)- pad naar de lokale (zonder roaming) Application Data-map.
      • (verzenden naar)- pad naar de map Verzenden naar gebruiker.
      • (gebruikersappgegevens) en (gemeenschappelijke app-gegevens)- pad naar de map Application Data.
      • (gebruikercf)- pad naar de map Common Files van de gebruiker (werkt alleen voor Windows 7 en latere versies, voor oudere Windows-versies wordt deze constante gelijkgesteld aan (localappdata) \ Programs \ Common).
      • (gebruikersbureaublad) en (gewone desktop)* - pad naar de bureaubladmap.
      • (gebruikersdocumenten) en (commondocs)- pad naar de map "Mijn documenten" (Mijn documenten).
      • (gebruikersfavorieten) en (algemene favorieten)* - pad naar de map "Favorieten".
      • (gebruiker)- pad naar de map Program Files van de gebruiker (werkt alleen voor Windows 7 en latere versies, voor oudere Windows-versies wordt deze constante gelijkgesteld aan (localappdata) \ Programs).
      • (gebruikersprogramma's) en (gewone programma's)* - pad naar de map "Alle programma's" in het menu "Start".
      • (gebruikersstartmenu) en (gemeenschappelijk startmenu)* - pad naar het hoogste niveau van het menu Start.
      • (gebruikersstart) en (gewone opstart)* - pad naar de map "Startup" in het menu "Start".
      • (gebruikerssjablonen) en (commontemplaten)* - pad naar de map "Sjablonen".

* = "algemene" constanten gelijk aan "gebruiker" constanten als de gebruiker geen beheerdersrechten heeft of als de instructie PrivilegesRequired op de laagste is ingesteld.

Andere constanten:

      • {\} - wordt gebruikt in gevallen waarin u een schuine streep aan het einde van het pad moet plaatsen, bijvoorbeeld (app) (\). Anders verwijdert Inno Setup de laatste schuine streep.
      • (% NAAM | Standaardwaarde)- de waarde van de omgevingsvariabele, waarbij NAME de naam van de variabele is, DefaultValue de tekenreeks die moet worden gebruikt als er geen variabele is. Standaardwaarde - optioneel. Voorbeelden: (% COMSPEC) of (% PROMPT | $ P $ G). Als de tekens ",", "|", ")" of "%" in de tekenreeks worden gebruikt, moet u in plaats daarvan "% 2c", "% 7c", "% 7d" en "% 25 schrijven ", respectievelijk.
      • (cmd)- volledig pad naar de console, bijvoorbeeld Windows \ System32 \ cmd.exe (de COMSPEC-omgevingsvariabele wordt niet gebruikt om deze constante uit te breiden).
      • (computer naam)- de naam van de computer waarop de installatie of verwijdering wordt uitgevoerd (de waarde die wordt geretourneerd door de functie GetComputerName).
      • (rijden: pad)- krijgt een stationsletter met een dubbele punt van een willekeurig pad. Als een UNC-pad is opgegeven, worden de server en map geretourneerd, bijvoorbeeld \\ SERVER \ SHARE. Ook hier, om de tekens ",", "|", ")" of "%" te schrijven, moet u respectievelijk "% 2c", "% 7c", "% 7d" en "% 25" schrijven. Voorbeelden zijn (station: (src)), (station: c: \ pad \ bestand), of (station: \\ server \ share \ pad \ bestand).
      • (groepsnaam)- de naam van de map in het "Start"-menu voor uw menu-items, die de gebruiker tijdens de installatie heeft geselecteerd. In tegenstelling tot de constante (groep), retourneert het alleen de naam, niet het volledige pad.
      • (hwnd)- identificatie van het achtergrondvenster van het installatieprogramma.
      • (tovenaar)- identifier van het venster van de installatiewizard of 0 als de identifier niet beschikbaar is.
      • (ini: Bestandsnaam, Sectie, Sleutel | Standaardwaarde)- waarde uit het INI-bestand, waarbij Bestandsnaam de naam is van het INI-bestand, Sectie de naam is van de sectie in het INI-bestand, Sleutel de naam is van de sleutel in het INI-bestand, DefaultValue is de tekenreeks die moet worden gebruikt als de opgegeven sleutel is niet gevonden. Ook hier, om de tekens ",", "|", ")" of "%" te schrijven, moet u respectievelijk "% 2c", "% 7c", "% 7d" en "% 25" schrijven. Voorbeeld: (ini: (win) \ MijnProg.ini, Instellingen, Pad | (pf) \ Mijn programma).
      • (taal) Is de interne naam van de geselecteerde taal.
      • (cm: berichtnaam) en (cm: Berichtnaam, Argumenten)- bericht in de huidige taal, waarbij MessageName de naam van het bericht is, Argumenten zijn de argumenten voor het bericht gescheiden door komma's. Ook hier, om de tekens ",", "|", ")" of "%" te schrijven, moet u respectievelijk "% 2c", "% 7c", "% 7d" en "% 25" schrijven. Voorbeeld: (cm: LaunchProgram, Inno Setup).
      • (reg: HKxx \ SubkeyName, ValueName | DefaultValue)- een tekenreeks uit het register, waarbij HKxx de hoofdregistersleutel is, Subsleutelnaam het pad naar de vereiste sleutel, Waardenaam is de naam van de waarde (of leeg als u de standaardwaarde voor de sleutel wilt lezen), DefaultValue is de tekenreeks die moet worden gebruikt als er geen opgegeven waarde is of een waarde die geen tekenreeks is (REG_SZ of REG_EXPAND_SZ). Ook hier, om de tekens ",", "|", ")" of "%" te schrijven, moet u respectievelijk "% 2c", "% 7c", "% 7d" en "% 25" schrijven. Voorbeeld: (reg: HKLM \ Software \ Mijn programma, Pad | (pf) \ Mijn programma).
      • (param: ParamName | Standaardwaarde)- parameter doorgegeven aan het installatieprogramma op de opdrachtregel, waar ParamName de naam van de parameter is, DefaultValue de tekenreeks is die moet worden gebruikt als de opgegeven parameter niet wordt gevonden. Om hier de tekens ",", "|", ")" of "%" te schrijven, moet u respectievelijk "% 2c", "% 7c", "% 7d" en "% 25" schrijven. Voorbeeld: (param: Pad | (pf) \ Mijn programma).
      • (srcexe)- volledig pad naar het installatieprogramma, bijvoorbeeld C: \ SETUP.EXE.
      • (uninstallexe)- volledig pad naar het verwijderingsprogramma dat door het installatieprogramma is gemaakt, bijvoorbeeld C: \ Program Files \ My Program \ unins000.exe. Deze constante wordt meestal gebruikt om een ​​snelkoppeling te maken om een ​​programma te verwijderen in de Inoo Setup-scriptsectie. De constante is alleen geldig als de instructie Uninstallable is ingesteld op yes.
      • (sysuserinfonaam), (sysuserinfoorg)- respectievelijk de naam en organisatie waarbij Windows is geregistreerd. Deze informatie wordt uit het register gelezen.
      • (gebruikersinfonaam), (gebruikersinfo), (gebruikersinfoserie)- naam, organisatie en serienummer, respectievelijk opgegeven door de gebruiker op de pagina "Gebruikersinformatie" in de installatiewizard (die kan worden ingeschakeld met behulp van de UserInfoPage-instructie). Meestal wordt deze informatie gebruikt om naar het register of INI te schrijven voor toekomstig gebruik.
      • (gebruikersnaam)- de naam van de gebruiker die het installatie- of verwijderingsprogramma heeft gestart (de functie GetUserName wordt gebruikt).
      • (logboek)- de naam van het logbestand of een lege regel als loggen niet is ingeschakeld.

Met de volgende stap van de Inno Setup Script Wizard kunt u uw toepassingsbestanden toevoegen.

In het bovenste veld is het belangrijkste uitvoerbare bestand geselecteerd. Als u het vakje aanvinkt " Gebruiker toestaan ​​de applicatie te starten nadat Setup is voltooid", Vervolgens wordt de gebruiker gevraagd om de applicatie na installatie uit te voeren. Als uw distributie geen uitvoerbaar bestand heeft, kunt u het selectievakje " De applicatie heeft geen uitvoerbaar hoofdbestand". Hieronder vindt u een lijst met bestanden voor uw distributie. Hier kunt u individuele bestanden toevoegen (de knop “ Bestanden toevoegen) ...") Of hele mappen (knop" Map toevoegen ..."). Wanneer u een map toevoegt, ziet u een extra vraag of u submappen wilt opnemen of niet.

Nadat u mappen en bestanden aan de lijst hebt toegevoegd, kunt u elk item bewerken (de " Bewerk ...") Of verwijder het (knop" Verwijderen"). In het bewerkingsvenster kunt u veel parameters wijzigen: of u submappen recursief moet opnemen (selectievakje " Terugkerende submappen"), Of het nodig is om lege mappen op te nemen (checkbox" Lege submappen opnemen"), Basisbestemmingsmap (velden" Bestemmingsbasismap") En een map in de basisbestemmingsmap (" Bestemmingssubmap»).

We zullen alleen het helpbestand voor dit voorbeeld toevoegen.

De volgende stap van de wizard is het selecteren van de pictogrammen die u wilt maken. in veld " Applicatie Start Menu mapnaam"Stelt de naam van de groep in het menu" Start "in. Als u het vakje aanvinkt " Gebruiker toestaan ​​om de mapnaam van het Startmenu te wijzigen", Dan kan de gebruiker de mapnaam tijdens de installatie wijzigen en als u het vakje aanvinkt" Sta gebruiker toe om het aanmaken van Start Menu-mappen uit te schakelen", De gebruiker kan het maken van deze map helemaal uitschakelen in het menu" Start ". Vink het vakje aan " Maak een internetsnelkoppeling in de map Start Menu" en " Maak een verwijderpictogram in de map Start Menu»Voor het installatieprogramma om respectievelijk snelkoppelingen binnen de groep te maken om uw site te openen en uw toepassing te verwijderen. Vinkjes " Gebruiker toestaan ​​een bureaubladpictogram te maken" en " Gebruiker toestaan ​​om een ​​snelstartpictogram te maken"Hiermee kan de gebruiker snelkoppelingen maken op het bureaublad en in de Quick Launch-groep. Ik zal alle vakjes aanvinken.

In de volgende stap worden de licentiebestanden ( Licentiebestand) en informatiebestanden die voor en na de installatie worden getoond. Als u een licentiebestand hebt opgegeven, moet de gebruiker tijdens de installatie akkoord gaan met de licentie. Ondersteunde bestanden .tekst en .rtf... Ik zal de bestanden verwijzen licentie.txt en Leesmij.txt uit de map met voorbeelden.

Selecteer in de volgende stap de ondersteunde talen. Ik laat het Engels en voeg Russisch toe.

De volgende stap is het instellen van opties voor de compiler Inno setup... in veld " Aangepaste compiler-uitvoermap"Het pad naar de map waar de compiler zich bevindt Inno setup zal de aangemaakte distributie opslaan. Als dit veld leeg is, wordt de distributie gemaakt in dezelfde map als het bestand .iss... in veld " Compiler output base bestandsnaam"Stelt de basisnaam in voor het distributiebestand of de bestanden. Als u bijvoorbeeld de naam " opstelling", Wanneer u vervolgens een distributie maakt die uit één bestand bestaat, ontvangt u een bestand setup.exe... in veld " Pictogrambestand voor aangepaste instellingen»U kunt de naam van het pictogrambestand voor de toekomstige distributie specificeren. Als hier niets is opgegeven, wordt het standaardpictogram gebruikt. In het laatste veld " Wachtwoord instellen»U kunt een wachtwoord opgeven dat de gebruiker tijdens de installatie moet opgeven. Als het selectievakje " Gebruik het wachtwoord om de applicatiebestanden te versleutelen", Dan worden de bestanden in de distributie gecodeerd met het opgegeven wachtwoord. Zo vul ik alle velden op mijn eigen manier in.

De volgende stap meldt dat er een preprocessor is gedetecteerd Inno setup en stelt voor om de richtlijnen te gebruiken #definiëren om je script te vereenvoudigen. Als u de richtlijn wilt gebruiken #definiëren, laat een vinkje “ Ja, gebruik #define compiler-richtlijnen". Als het vakje niet is aangevinkt, kunt u in de toekomst richtlijnen toevoegen #definiëren handmatig in uw script.

En tot slot verscheen de laatste stap, waar we gewoon op de knop klikken " Finish».

Daarna wil de compiler meteen ons script compileren. Laten we het eens zijn en op de knop drukken " Ja».

Daarna zal de compiler ons waarschuwen dat het script niet is opgeslagen en aanbieden om het te doen.

Laten we het eens zijn (klik op " Ja") En sla het script op. Na het opslaan is het script gecompileerd en is de distributiekit klaar, in het voorbeeld is dit het bestand mijn-setup.exe, is gemaakt in de map die ik heb opgegeven in de wizard bij de stap " Compilerinstellingen". Na compilatie kun je zien hoe het ging op het paneel " Uitvoer van compiler"Zie de afbeelding onderaan het compilervenster.

Zoals je kunt zien, is alles eenvoudig. Laten we nu meteen de voltooide distributie testen. Klik op het menu-item " Uitvoeren -> Uitvoeren"Om de installatie van het programma te starten.

Nadat je je script hebt gemaakt, kun je beginnen met het toevoegen van verschillende geavanceerde acties.

Een distributie debuggen in Inno Setup

Om uw distributie te debuggen, opent u het script .iss en klik op het menu-item " Uitvoeren -> Uitvoeren"Om de installatie van het programma te starten. Daarna kunt u interne processen volgen tijdens de installatie in het venster " Uitvoer debuggen", U kunt breekpunten instellen op de benodigde lijnen, zie de afbeelding.

Om de waarde van een constante te controleren tijdens het debuggen, klikt u op het menu-item " Uitvoeren -> Constante evalueren ..."En in het dialoogvenster dat wordt geopend, geeft u de naam van de constante op (zie de afbeelding) en klikt u op" oke».

Daarna verschijnt het volgende venster met het resultaat dat door de constante wordt geretourneerd.

Om het verwijderen te debuggen, klikt u op het menu-item “ Uitvoeren -> Doel verwijderen", en toen " Uitvoeren -> Uitvoeren". En om terug te keren naar de installatie, klik op het item " Uitvoeren -> Doel instellen».

Inno Setup scriptstructuur

Scripts in Inno Setup zijn onderverdeeld in secties. Elke sectienaam staat tussen vierkante haken. Elke sectie bevat elementen die specifiek zijn voor die sectie. Voor het gemak kunt u meerdere secties met dezelfde naam maken. Dergelijke secties zullen als één worden gezien. Hier is een voorbeeld:

[Setup] AppName = Mijn programma [Files] Bron: "MYPROG.EXE"; Bestemmingsmap: "(app)"

U kunt commentaar geven op regels die door de compiler moeten worden genegeerd door eerst een puntkomma te plaatsen.

Het script ondersteunt een C-achtige richtlijn #erbij betrekken, waardoor de compiler wordt gedwongen regels uit het opgegeven willekeurige tekstbestand op te halen waar deze instructie verschijnt. Hier is de syntaxis:

#include "bestandsnaam.txt"

De richtlijn gebruiken #preproc u kunt specificeren welke preprocessor u wilt gebruiken: inline, ondersteunt alleen richtlijn #erbij betrekken, of Inno Setup Preprocessor (ISPP), die zoveel richtlijnen en functies ondersteunt. Standaard gebruiken scripts de preprocessor ISPP, als het is geïnstalleerd en in bestanden .isl de ingebouwde preprocessor wordt gebruikt. Hier is de syntaxis:

#preproc ingebouwd #preproc ispp

Inno Setup-scriptsecties

Ik zal hier een volledige lijst van alle secties geven. Inno setup met een korte beschrijving. Een volledige beschrijving van secties en een lijst van sectie-elementen vindt u in de helpsectie " Scriptsecties instellen».

- dit gedeelte bevat algemene instellingen die worden gebruikt tijdens installatie en verwijdering. Voorbeeld:

[Setup] AppName = Mijn programma AppVersion = 1.5 DefaultDirName = (pf) \ My Program DefaultGroupName = Mijn programma

- optionele sectie die installatie-opties definieert ( Vol/Compact/Selectief), die wordt weergegeven op de pagina voor het selecteren van componenten voor installatie. Voorbeeld:

[Typen] Naam: "vol"; Beschrijving: "Volledige installatie" Naam: "compact"; Beschrijving: "Compacte installatie" Naam: "custom"; Beschrijving: "Aangepaste installatie"; Vlaggen: iscustom

- een optionele sectie die de componenten definieert die worden weergegeven op de pagina voor het selecteren van componenten voor installatie. Voorbeeld:

[Onderdelen] Naam: "hoofd"; Beschrijving: "Hoofdbestanden"; Types: volledig compact op maat; Vlaggen: vast Naam: "help"; Beschrijving: "Help-bestanden"; Types: volledige naam: "help \ english"; Beschrijving: "Engels"; Types: volledige Naam: "help \ dutch"; Beschrijving: "Nederlands"; Soorten: vol

- een optionele sectie voor het maken van extra taken die tijdens de installatie moeten worden uitgevoerd. De gebruiker ziet taken in de vorm van schakelaars en kan kiezen of hij deze of gene taak wil uitvoeren of niet. Voorbeeld:

[Taken] Naam: desktopicon; Beschrijving: "Maak een & bureaubladpictogram"; GroupDescription: "Extra pictogrammen:"; Componenten: main Naam: desktopicon \ common; Beschrijving: "Voor alle gebruikers"; GroupDescription: "Extra pictogrammen:"; Componenten: hoofd; Vlaggen: exclusief Naam: desktopicon \ gebruiker; Beschrijving: "Alleen voor de huidige gebruiker"; GroupDescription: "Extra pictogrammen:"; Componenten: hoofd; Vlaggen: exclusief niet aangevinkt Naam: quicklaunchicon; Beschrijving: "Maak een & Quick Launch-pictogram"; GroupDescription: "Extra pictogrammen:"; Componenten: hoofd; Vlaggen: niet aangevinkt Naam: associate; Beschrijving: "& Koppel bestanden"; Groepsbeschrijving: "Andere taken:"; Vlaggen: niet aangevinkt

- deze optionele sectie bepaalt welke extra mappen, naast de applicatiemap, moeten worden aangemaakt.

[Dirs] Naam: "(app) \ data" Naam: "(app) \ bin"

- een optionele sectie die bepaalt welke bestanden op de computer worden geïnstalleerd.

[Bestanden] Bron: "CTL3DV2.DLL"; Bestemmingsmap: "(sys)"; Vlaggen: alleen als er geen installatie ongedaan wordt gemaakt Bron: "MYPROG.EXE"; DestDir: "(app)" Bron: "MYPROG.CHM"; DestDir: "(app)" Bron: "README.TXT"; Bestemmingsmap: "(app)"; Vlaggen: isreadme

- een optionele sectie die bepaalt welke snelkoppelingen worden gemaakt in het menu Start, op het bureaublad, enz.

[Pictogrammen] Naam: "(groep) \ Mijn programma"; Bestandsnaam: "(app) \ MYPROG.EXE"; WorkingDir: "(app)" Naam: "(groep) \ Mijn programma verwijderen"; Bestandsnaam: "(uninstallexe)"

- een optionele sectie die bepaalt welke records aan het INI-bestand worden toegevoegd.

[INI] Bestandsnaam: "MyProg.ini"; Sectie: "Installatie-instellingen"; Vlaggen: uninsdeletesection Bestandsnaam: "MyProg.ini"; Sectie: "Installatie-instellingen"; Sleutel: "InstallPath"; Tekenreeks: "(app)"

en - deze optionele secties bepalen welke bestanden of mappen respectievelijk moeten worden verwijderd tijdens de eerste installatie of verwijdering. Voorbeeld:

[Verwijderen verwijderen] Type: bestanden; Naam: "(win) \ MYPROG.INI"

- de sectie definieert de talen die beschikbaar zullen zijn tijdens de installatie. Bij het starten van het installatieprogramma wordt de taal geselecteerd die overeenkomt met de taal van het systeem. Anders wordt standaard de taal gebruikt die de eerste is in de sectie. ... Voorbeeld:

[Talen] Naam: "nl"; MessagesFile: "compiler: Default.isl" Naam: "nl"; BerichtenBestand: "compiler: Talen \ Dutch.isl"

- sectie voor het vervangen van berichten beschreven in taalbestanden .isl... Een voorbeeld van het vervangen van de standaardtekst " & Volgende>»Op de volgende stap-knop alleen voor Engels:

[Berichten] nl.KnopVolgende = & Doorsturen>

- sectie voor het definiëren van constante waarden (cm: ...), zie de beschrijving van constanten hierboven. Gebruiksvoorbeeld:

[CustomMessages] CreateDesktopIcon = Maak een & bureaubladpictogram [Taken] Naam: desktopicon; Beschrijving: "(cm: CreateDesktopIcon)"

- sectie bevat taalinstellingen zoals lettertype. Voorbeeld:

[LangOptions] LanguageName = Engels LanguageID = $ 0409 LanguageCodePage = 0 DialogFontName = DialogFontSize = 8 WelcomeFontName = Verdana WelcomeFontSize = 12 TitleFontName = Arial TitleFontSize = 29 CopyrightFontName = Arial CopyrightFontSize = 8 RightToLeft = nee

- deze optionele sectie definieert welke sleutels en waarden in het register moeten worden gemaakt, gewijzigd of verwijderd. Voorbeelden van gebruik:

[Register] Root: HKCU; Subsleutel: "Software \ Mijn bedrijf"; Vlaggen: uninsdeletekeyifempty Root: HKCU; Reserve sleutel:; Vlaggen: uninsdeletekey Root: HKLM; Subsleutel: "Software \ Mijn bedrijf"; Vlaggen: uninsdeletekeyifempty Root: HKLM; Reserve sleutel: "Software \ Mijn bedrijf \ Mijn programma"; Vlaggen: uninsdeletekey Root: HKLM; Reserve sleutel: "Software \ Mijn bedrijf \ Mijn programma \ Instellingen"; Waardetype: tekenreeks; Waardenaam: "InstallPath"; Waardegegevens: "(app)"

- deze optionele sectie bepaalt welke programma's moeten worden uitgevoerd na een succesvolle installatie, maar voordat de laatste stap in het installatiewizardvenster verschijnt. Voorbeelden:

[Uitvoeren] Bestandsnaam: "(app) \ INIT.EXE"; Parameters: "/ x" Bestandsnaam: "(app) \ README.TXT"; Beschrijving: "Bekijk het README-bestand"; Vlaggen: postinstall shellexec skipifsilent Bestandsnaam: "(app) \ MYPROG.EXE"; Beschrijving: "Toepassing starten"; Vlaggen: na installatie is nu skipifsilent uitgeschakeld

- deze optionele sectie bepaalt welke programma's helemaal aan het begin van het verwijderen moeten worden uitgevoerd.

- in deze optionele sectie kunt u uw Pascal schrift... Om te verwerken Pascal schrift de motor wordt gebruikt RemObjects Pascal-script... Deze motor is zo gratis als Inno setup... Motor officiële pagina RemObjects Pascal-script-. Gebruiksvoorbeelden zijn te vinden in de bestanden " Code * .iss" en " UninstallCode * .iss"in de map" Voorbeelden»Op de plaats van installatie Inno setup.

Installatie- en verwijderingsprocedure

Een heel belangrijk punt tijdens de installatie is het begrijpen van de volgorde waarin het script wordt uitgevoerd. De acties van het installatieprogramma worden hieronder weergegeven in de volgorde waarin ze tijdens de installatie worden uitgevoerd:

      • Sectie uitvoering .
      • Sectie-elementen worden opgeslagen in het verwijderingslogboek (dat in dit stadium in het geheugen wordt opgeslagen).
      • De applicatiedirectory wordt indien nodig aangemaakt.
      • Secties in uitvoering .
      • Indien nodig wordt een back-up gemaakt van de naam van het verwijderingslogbestand.
      • Sectie in uitvoering (bestanden zijn nog niet geregistreerd).
      • Sectie in uitvoering .
      • Sectie in uitvoering .
      • Sectie in uitvoering .
      • In te checken bestanden worden ingecheckt, tenzij het systeem opnieuw moet worden opgestart. In het geval dat opnieuw opstarten vereist is, vindt registratie pas plaats na een herstart van het systeem.
      • Voeg indien nodig toe aan de lijst met geïnstalleerde programma's (Configuratiescherm \ Programma's \ Programma's en onderdelen).
      • Sectie-elementen opgeslagen in het verwijderingslogboek.
      • Het EXE-bestand en het de-installatielogboek worden op schijf opgeslagen. Na dit punt mag de gebruiker de installatie niet annuleren, en eventuele volgende fouten zullen de installatie niet terugdraaien.
      • Sectie uitvoering , behalve de elementen van de sectie met de ingestelde vlag “ postinstall”Dat wordt uitgevoerd nadat de laatste stap van de installatiewizard is weergegeven.
      • Bijwerken van bestandsassociaties als de vlag " Wijzigingen Verenigingen"Ingesteld op" Ja».
      • Actieve applicaties op de hoogte stellen dat omgevingsvariabelen zijn gewijzigd als de vlag " WijzigingenOmgeving"Ingesteld op" Ja».
      • De sectie-elementen worden uitgevoerd in de volgorde waarin ze zich binnen de sectie bevinden.

Het verwijderen gebeurt in omgekeerde volgorde. Maar dit geldt niet voor secties. en die worden uitgevoerd in de volgorde waarin ze in het script verschijnen (niet in omgekeerde volgorde).

Inno Setup-preprocessor

Ik zou graag een paar woorden willen schrijven over de preprocessor Inno Setup (ISPP). De belangrijkste taak van de preprocessor is om compileertaken te automatiseren en de kans op typefouten in uw scripts te verkleinen. U kunt bijvoorbeeld een variabele declareren ISPP(compileertijdvariabele) die de naam van uw toepassing bevat, en gebruik vervolgens de waarde van die variabele op meerdere plaatsen in uw script. Mocht u in de toekomst, om wat voor reden dan ook, de naam van uw applicatie moeten wijzigen, dan kunt u dit op één plek in uw script doen. Zonder ISPP, je zult alle delen van het script moeten vinden en repareren waar je de applicatienaam gebruikt, bijvoorbeeld AppName, AppVerName, DefaultGroupName enzovoort.

Nog een gebruiksgeval ISPP- dit haalt informatie over de versie van de applicatie uit het EXE-bestand en gebruikt het in de instructies AppVerName in de sectie ... Zonder ISPP, u zult het script elke keer moeten wijzigen als u de versie van de toepassing wijzigt.

Bovendien maakt het splitsen van het script in delen het mogelijk om één script te maken voor verschillende versies van uw applicatie (bijvoorbeeld proefversies en volledig functionele versies).

Bij gebruik van de preprocessor is het belangrijk om te onthouden dat de preprocessor alleen werkt tijdens het compileren.

De Inno Setup-compiler aanroepen vanaf de opdrachtregel

Het is niet overbodig om te weten over de mogelijkheid om de distributie vanaf de opdrachtregel te compileren. De compilatie-aanroep ziet er als volgt uit:

compile32 / cc