!define VERSION "1.0.0"
; καθορισμός της έκδοσης της εφαρμογής μας (θα φαίνεται στο TitleBar κατά την εγκατάσταση)
Name "Sample ${VERSION}"
; καθορισμός του ονόματος της εφαρμογής μας(θα φαίνεται στο TitleBar κατά την εγκατάσταση)
OutFile "SampleInstall.exe"
;το όνομα του αρχείου εγκατάστασης που θα δημιουργηθεί
InstallDir $PROGRAMFILES\Sample
; η τοποθεσία που θα γίνει η εγκατάσταση στο σκληρό δίσκο
Page directory
; ορισμός που χρειάζεται για να χρησιμοποιήσουμε τη σελίδα επιλογής χώρου εγκατάστασης
Page instfiles
; ορισμός που χρειάζεται για να χρησιμοποιήσουμε τη σελίδα επιλογής χώρου εγκατάστασης
Function .onInit
; παράδειγμα διαδικασίας που εμφανίζει κάποιο μήνυμα μόλις τρέξει η εφαρμογή εγκατάστασης
MessageBox MB_YESNO "You are about to install Sample Application. Do you wish to continue?" IDYES cont
; εμφάνιση μηνύματος YES / NΟ
Abort
; Αν πατηθεί το NO τότε κλείνει την εφαρμογή
cont:
;συνέχισε
FunctionEnd
;τέλος διαδικασίας
Function un.onInit
; Παρόμοια διαδικασία η οποία εκτελείτε κατά την απεγκατάσταση (Προσέξτε το "un" πριν το onInit)
MessageBox MB_YESNO "You are about to uninstall Sample Application. Do you wish to continue?" IDYES cont
Abort
cont:
FunctionEnd
Section "Uninstall"
; έναρξη "τομέα" Unistall (εδώ επιλέγουμε τι θέλουμε να διαγραφεί κατά την απεγκατάσταση)
Delete $INSTDIR\Uninstall.exe
; διαγράφει το Unistall τον εαυτό του
RMDir /r /REBOOTOK $INSTDIR
; διαγράφει τα περιεχόμενα και το φάκελο της εγκατάστασης (το /r το βάζουμε ώστε αν κάποιο από τα περιεχόμενα του φακέλου χρησιμοποιείται να διαγραφεί στην επόμενη εκκίνηση του υπολογιστή)
RMDir /r /REBOOTOK $SMPROGRAMS\Sample
;διαγράφει τα περιεχόμενα και το φάκελο της εγκατάστασης στο Μενού έναρξης
SectionEnd
;τέλος τομέα
Section ""
; Έναρξη του Section εγκατάστασης δεν απαιτεί καθορισμό ονόματος
SetOutPath $PROGRAMFILES\Sample
; Πού θα αποσυμπιεστούν τα αρχεία της εγκατάστασης(εδώ μπορούσαμε να χρησιμοποιήσουμε το $INSTDIR με τα ίδια αποτελέσματα)
File /r Sample\*.*
; Ορισμός των αρχείων που θα γίνουν εγκατάσταση( Στη περίπτωση μας πρέπει να βρίσκονται όλα σε ένα φάκελο "Sample" στην ίδια διαδρομή με το αρχείο κώδικα nsi.
WriteUninstaller $INSTDIR\Uninstall.exe
; δημιουργία Unistaller
CreateDirectory "$SMPROGRAMS\Sample"
; δημιουργία φακέλου στο Μενού 'Εναρξης
CreateShortCut "$SMPROGRAMS\Sample\Sample.lnk" "$INSTDIR\Sample.exe"
; δημιουργία συντόμευσης της εφαρμογής μας στο μενού 'Εναρξης
CreateShortCut "$SMPROGRAMS\Sample\Unistall.lnk" "$INSTDIR\Uninstall.exe"
; δημιουργία συντόμευσης του αρχείου απεγκατάστασης στο μενού 'Εναρξης
CreateShortCut "$DESKTOP\Sample.lnk" "$INSTDIR\Sample.exe"
; δημιουργία συντόμευσης της εφαρμογής μας στην επιφάνεια εργασίας
SectionEnd
;Τέλος τομέα
Θα ακολουθήσει και άλλο παράδειγμα με πιο σύνθετες λειτουργίες