Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

Îåêßíçóå áðü ôï ìÝëïò Ευθύμης Δημόπουλος. Τελευταία δημοσίευση από το μέλος Ευθύμης Δημόπουλος στις 06-10-2008, 09:19. Υπάρχουν 8 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  03-10-2008, 14:03 45107

    Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος



    Καλησπέρα,

    Θέλω να διανείμω κάποια pdf αρχεία σε ένα cd και θα ήθελα όταν ο χρήστης βάζει το cd:
    • να γίνεται έλεγχος αν υπάρχει εγκατεστημένος ο Adobe Reader
    • αν υπάρχει να ανοίγει κάποιο pdf αρχείο
    • αλλιώς να γίνεται εγκατάσταση του Reader
    Έχει παρουσιαστεί αυτο το θέμα σε κανέναν συνάδελφο; Πως μπορεί να υλοποιηθεί;

    Ψάχνω για κάποια low cost ίσως και free λύση


    Ευχαριστώ για το χρόνο σας
  •  03-10-2008, 14:27 45108 σε απάντηση της 45107

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Έτοιμη λύση δεν νομίζω να υπάρχει. Το κριτήριο για το αν υπάρχει ή όχι ένα πρόγραμμα είναι διαφορετικό για κάθε πρόγραμμα.

    Φαντάζομαι ότι η ύπαρξη ενός registry entry μπορεί να προδίδει την ύπαρξη του acrobat reader. Προσωπικά θα έκανα ένα μικρό inno setup script που να ψάχνει την registry και αν δεν βρω αυτό που θέλω να εκτελεί την εγκατάσταση. Περισσότερα στο forum του innosetup. Προτείνω το inno setup γιατί είναι πολύ ελαφρύ και γιατί δεν μπορείς να το κάνεις με .net. Τότε θα πρέπει να ψάχνεις και αν υπάρχει το .net runtime.

    Αλλά δεν είναι και τόσο τραγικό να γίνει manual η εγκατάσταση. Άλλωστε δεν νομίζω να μπορείς να κάνεις την εγκατάσταση τελείως silent. Ο installation wizard του acrobat θα εμφανιστεί και ο χρήστης θα πρέπει να πατήσει next, next κλπ. Αν προσωπικά έβαζα ένα cd και μου έκανε αυτόματα μια εγκατάσταση δεν θα μου άρεζε και πολύ. Φυσικά η επιλογή είναι δική σου!


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  03-10-2008, 14:42 45110 σε απάντηση της 45108

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Σε ευχαριστώ Δημήτρη. (Συγχαρητήρια και για τη διάκρισή σου!)

    Πράγματι λοιπόν έφτιαξα στην vb ένα κομμάτι κώδικα που κοιτάει στη registry για το key του acrobat
    όμως όπως είπες πρέπει να κοιτάει και για το .ΝΕΤ και πέρα από αυτό σε vista δε παίζει λόγω της προστασίας της registry.

    Μιας και το όλο σκηνικό είναι εξαιρετικά low budget σκέφτηκα να ξεκινάει με κάποιο hta και αν γίνεται να κοιτάει με javascript αν υπάρχει το Acrobat reader
    (Τι κάνει ο άνθρωπος σε στιγμές απελπισίας...) Βέβαια τώρα το δουλεύω...

    Παρεπιπτόντως έπεσε στα χέρια μου ένα cd που έκανε αυτή τη δουλειά, (δηλ. αυτό ακριβώς που θέλω) και αυτός που το έφτιαξε είχε χρησιμοποιήσει flash για όλα αυτά
    και το είχε κάνει deploy μέσω του macromedia projector...Γι'αυτο κι εγώ ρώτησα αν υπάρχει κάποιο πρόγραμμα που να μπορώ να κάνω το ίδιο...
  •  03-10-2008, 15:01 45111 σε απάντηση της 45110

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Efthimis:
    Σε ευχαριστώ Δημήτρη. (Συγχαρητήρια και για τη διάκρισή σου!)

    Thanks!!!

    Efthimis:


    Πράγματι λοιπόν έφτιαξα στην vb ένα κομμάτι κώδικα που κοιτάει στη registry για το key του acrobat
    όμως όπως είπες πρέπει να κοιτάει και για το .ΝΕΤ και πέρα από αυτό σε vista δε παίζει λόγω της προστασίας της registry.

    Δεν πρέπει να έχεις πρόβλημα με τα vista. Αν ανοίξεις σωστά το registry key μόνο για ανάγνωση λογικά πρέπει να δουλεύει. Δεν το έχω δοκιμάσει βέβαια.

    Efthimis:


    Μιας και το όλο σκηνικό είναι εξαιρετικά low budget σκέφτηκα να ξεκινάει με κάποιο hta και αν γίνεται να κοιτάει με javascript αν υπάρχει το Acrobat reader
    (Τι κάνει ο άνθρωπος σε στιγμές απελπισίας...) Βέβαια τώρα το δουλεύω...

    Το hta είναι καλό για auto-play. Δεν είναι λύση απελπισίας. Αλλά δεν νομίζω να μπορείς να κάνεις τον έλεγχο που θέλεις. Σίγουρα με javascript δεν θα σε αφήσει το λειτουργικό να προσπελάσεις την registry. Εγώ θα έβαζα ένα απλό link στον χρήστη που να λέει 'Click here to install Acrobat Reader' χωρίς αυτοματισμούς.


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  03-10-2008, 15:11 45112 σε απάντηση της 45111

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    από hta μπορώ να ανοίξω ένα pdf με τον Acrobat reader και όχι με browser?
  •  03-10-2008, 16:55 45117 σε απάντηση της 45112

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Efthimis:
    από hta μπορώ να ανοίξω ένα pdf με τον Acrobat reader και όχι με browser?

    Από .hta, μπορείς να τρέξεις script χωρίς τους περιορισμούς του security των security zones που υποβάλει το sandbox του Internet Explorer - αν τα δικαιώματα του χρήστη είναι αρκετά να εκτελέσουν αυτό που ζητάς, τότε δεν υπάρχει κάτι που να εμποδίσει το script σου.

    Πιθανολογώ ότι καλύτερα αποτελέσματα θα έχεις, αν αντί για το registry, προσπαθήσεις να κάνεις create το object "AcroPDF.PDF" που ουσιαστικά είναι ο Viewer, και αν το αντικείμενο γίνει create, τότε μπορείς να καλέσεις τον viewer για να κάνει launch το αρχείο σου...

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  03-10-2008, 20:19 45124 σε απάντηση της 45107

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Αυτό που ζητάς είναι μία στάνταρ λειτουργία του Windows Installer από  ... καταβολής Windows Installer. Όταν φτιάχνεις ένα setup package ορίζεις τα πιθανά προαπαιτούμενα και μπορείς να ενεργοποιήσεις την εγκατάσταση ενός component (όπου component μπορεί να είναι οτιδήποτε, από πρόγραμμα μέχρι χύμα αρχείο pdf) με βάση την ύπαρξη ή όχι των προαπαιτούμενων, ή την εκτέλεση κάποιων εργασιών, οι οποίες μπορεί και να είναι η εκτέλεση κάποιου άλλου προγράμματος. Θα μπορούσες λοιπόν να φτιάξεις ένα setup το οποίο θα τρέχει με το Autorun, με ένα ωραίο splash screen το οποίο δεν θα θυμίζει πολύ Windows Installer και θα κάνει τα παρακάτω:

    1. Ελέγχει για την ύπαρξη του Acrobat Reader και θέτει ένα Property αν το βρει
    2. Αν ο Acrobat δεν έχει βρεθεί, εκτελεί το setup του Acrobat
    3. Τέλος εκτελεί το 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
  •  03-10-2008, 20:42 45125 σε απάντηση της 45124

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Το παρακάτω μάλλον θα κάνει τη δουλειά. Αρκεί να βρώ κι ένα μηχάνημα ή VM χωρίς Acrobat για να επιβεβαιώσω ότι χωρίς Acrobat το HKLM\.pdf δεν υπάρχει.

    @echo off
    reg query HKCR\.pdf
    IF not ERRORLEVEL 0 AdbeRdr90_en_US.exe
    start mypdf.pdf


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  06-10-2008, 09:19 45169 σε απάντηση της 45125

    Απ: Εφαρμογή για ανίχνευση εγκατάστασης προγράμματος

    Σας ευχαριστώ για τις απαντήσεις, δυστυχώς το Σ/Κ δε διέθετα internet so, θα ψάξω λίγο τις προτάσεις σας και θα επανέλθω...


    (Αφήνω το θέμα ανοιχτό και θα επανέλθω για το κλείσιμό του)


    Ευθύμης
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems