Αυτό που ζητάς είναι μία στάνταρ λειτουργία του Windows Installer από ... καταβολής Windows Installer. Όταν φτιάχνεις ένα setup package ορίζεις τα πιθανά προαπαιτούμενα και μπορείς να ενεργοποιήσεις την εγκατάσταση ενός component (όπου component μπορεί να είναι οτιδήποτε, από πρόγραμμα μέχρι χύμα αρχείο pdf) με βάση την ύπαρξη ή όχι των προαπαιτούμενων, ή την εκτέλεση κάποιων εργασιών, οι οποίες μπορεί και να είναι η εκτέλεση κάποιου άλλου προγράμματος. Θα μπορούσες λοιπόν να φτιάξεις ένα setup το οποίο θα τρέχει με το Autorun, με ένα ωραίο splash screen το οποίο δεν θα θυμίζει πολύ Windows Installer και θα κάνει τα παρακάτω:
- Ελέγχει για την ύπαρξη του Acrobat Reader και θέτει ένα Property αν το βρει
- Αν ο Acrobat δεν έχει βρεθεί, εκτελεί το setup του Acrobat
- Τέλος εκτελεί το pdf αρχείο, το οποίο θα έχει ως αποτέλεσμα να ανοίξει το αρχείο
Η αλήθεια είναι ότι η χρήση του Windows Installer γι αυτή τη δουλειά είναι λίγο περίεργη καθώς στην πραγματικότητα δεν εγκαθιστάς κάτι. Άσε που δημιουργεί εγγραφές στο Add/Remove programs. Θα μπορούσες επίσης να χρησιμοποιήσεις το NSIS installer, το οποίο δεν χρησιμοποιεί την υποδομή του Windows Installer αλλά βασίζεται σε script που γράφεις εσύ. Μπορείς έτσι να κρατήσεις μόνο τα τμήματα του script που αφορούν τον εντοπισμό του Acrobat και την εκτέλεση του PDF και να παραλείψεις το uninstall, registrations, κλπ.
Μπορείς επίσης να δοκιμάσεις να φτιάξεις ένα batch αρχείο το οποίο θα ελέγχει την ύπαρξη του κατάλληλου Registry key με την εντολή REG QUERY και ανάλογα με το αποτέλεσμα θα εκτελεί το setup του Acrobat και μετά θα εκτελεί το pdf. Θα το σκαλίσω λίγο και θα επανέλθω
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos