Προς το περιεχόμενο

Πρόγραμμα και Γραμμή εργασιών


pusher

Προτεινόμενες αναρτήσεις

  • Απαντ. 38
  • Δημ.
  • Τελ. απάντηση
Δημοσ.

alkisg ωραίος! Για άλλη μια φορά πολύ κατατοπιστικός!!! Όσο για την πρότασή σου για υπόμνημα είναι πράγματι μια πολύ καλή ιδέα... Ελπίζω να γίνει και πραγματικότητα.

Δημοσ.

Και μιας και μιλάμε για προγραμματισμό σε Windows και Installers... Το αν εκκινεί μία εφαρμογή μαζί με τα Windows δεν εξαρτάται από μία εγγραφή στη registry; Εκτός από θέμα κώδικα δεν είναι και ζήτημα του Installer να κάνει αυτή την εγγραφή στη registry κατά την εγκατάσταση του προγράμματος;

Δημοσ.

Εκκίνηση προγράμματος μπορεί να γίνει από το μητρώο (από καμιά 10ριά διαφορετικές μεριές) αλλά μπορεί επίσης να γίνει κι από το φάκελο startup του μενού έναρξη, από το win.ini, από το system.ini κτλ.

 

Οι περισσότεροι installers δίνουν τη δυνατότητα να προσθέσεις καταχωρήσεις σε όλα αυτά.

 

Πάντως δεν είναι απαραίτητος ο installer, μπορείς να γράψεις στο μητρώο απευθείας από το πρόγραμμά σου. Π.χ. σε ένα πρόγραμμά μου έφτιαξα δικό μου installer γιατί δεν έβρισκα κανέναν που να υποστηρίζει unicode paths/shortcuts/registry entries κτλ.

 

Εξάλλου, αν έχεις επιλογή σε κάποιο μενού "Να γίνεται εκκίνηση του προγράμματος μαζί με τα Windows", τότε συνήθως δεν είναι θέμα installer, αφού όταν πατιέται αυτή η επιλογή το πρόγραμμά σου είναι ήδη εγκατεστημένο.

Το "συνήθως" πάει στον installshield που έχει τέτοια επιλογή ακόμα και μετά την εγκατάσταση. Αλλά είναι σπαστικό να πατάς ένα μενού και ξαφνικά να βλέπεις να φορτώνεται ολόκληρος installer και να κάνει 1 λεπτό απλά για να αλλάξει μια τιμή στο μητρώο...

 

Πολλά μαζεμένα τα είπα, ελπίζω να έβγαλες άκρη.

Δημοσ.

Από τη σκοπιά του ΤΕΛΙΚΟΥ ΧΡΗΣΤΗ:

 

Η μεγάλη μου συμπάθεια είναι ο NSIS. Με το που βλέπω NSIS, το πρόγραμμα κερδίζει αμέσως 1 πόντο. :-) Ίσως είμαι επηρεασμένος και από το ότι τον χρησιμοποιούν παρά πολλά καλοφτιαγμένα, αγαπημένα και πρώτης ανάγκης προγράμματα:

 

Thunderbird, Firefox, ImgBurn, xplorer², foobar2000, Notepad++, Mp3tag, Drive Snapshot, 7-Zip, AutoHotkey και πολλά πολλά άλλα.

 

Συνειρμικά πρέπει να το έχω συνδέσει με προγράμματα που τα εγκαθιστώ άφοβα (a rare bird in the Windows universe) και που τα προτείνω ανεπιφύλακτα. :-P

 

Γενικά, έχει εντυπωσιακό μερίδιο αγοράς:

 

http://nsis.sourceforge.net/Users

 

O Inno είναι κι αυτός πολύ συμπαθητικός και διακριτικός.

 

Και τα δύο αυτά (αλλά κι ένα άλλο που είπε πιο πάνω ο Άλκης) υποστηρίζουν τον βασικό αλγόριθμο του 7Z (LZMA) και έτσι πετυχαίνουν και πολύ καλά μεγέθη.

 

Τα MSI όταν τα βλέπω κουμπώνομαι, για τους λόγους που λέει πιο πάνω ο Άλκης στα αρνητικά. Έχω ταλαιπωρηθεί κιόλας δυο-τρεις φορές. Τελευταία φορά βλαστήμησα με μια εγκατάσταση του OpenOffice.

 

@ alkisg

 

Αν θες μπορούμε να στεγάσουμε το ποστ στο Με ποιο πρόγραμμα; κι ας μην είναι κοινή απορία (προσωρινά τουλάχιστον, μέχρι να φτιαχτεί κάτι άλλο). Μόνο τα λινκ του λείπουν. :-)

Δημοσ.
Εκκίνηση προγράμματος μπορεί να γίνει από το μητρώο (από καμιά 10ριά διαφορετικές μεριές) αλλά μπορεί επίσης να γίνει κι από το φάκελο startup του μενού έναρξη, από το win.ini, από το system.ini κτλ.

 

Οι περισσότεροι installers δίνουν τη δυνατότητα να προσθέσεις καταχωρήσεις σε όλα αυτά.

 

Πάντως δεν είναι απαραίτητος ο installer, μπορείς να γράψεις στο μητρώο απευθείας από το πρόγραμμά σου. Π.χ. σε ένα πρόγραμμά μου έφτιαξα δικό μου installer γιατί δεν έβρισκα κανέναν που να υποστηρίζει unicode paths/shortcuts/registry entries κτλ.

 

Εξάλλου, αν έχεις επιλογή σε κάποιο μενού "Να γίνεται εκκίνηση του προγράμματος μαζί με τα Windows", τότε συνήθως δεν είναι θέμα installer, αφού όταν πατιέται αυτή η επιλογή το πρόγραμμά σου είναι ήδη εγκατεστημένο.

Το "συνήθως" πάει στον installshield που έχει τέτοια επιλογή ακόμα και μετά την εγκατάσταση. Αλλά είναι σπαστικό να πατάς ένα μενού και ξαφνικά να βλέπεις να φορτώνεται ολόκληρος installer και να κάνει 1 λεπτό απλά για να αλλάξει μια τιμή στο μητρώο...

 

Πολλά μαζεμένα τα είπα, ελπίζω να έβγαλες άκρη.

 

Νομίζω πως έβγαλα άκρη. Αν προκύψει καμιά απορία εδώ είμαστε!

 

Από τη σκοπιά του ΤΕΛΙΚΟΥ ΧΡΗΣΤΗ:

 

Η μεγάλη μου συμπάθεια είναι ο NSIS. Με το που βλέπω NSIS, το πρόγραμμα κερδίζει αμέσως 1 πόντο. :-) Ίσως είμαι επηρεασμένος και από το ότι τον χρησιμοποιούν παρά πολλά καλοφτιαγμένα, αγαπημένα και πρώτης ανάγκης προγράμματα:

 

Thunderbird, Firefox, ImgBurn, xplorer², foobar2000, Notepad++, Mp3tag, Drive Snapshot, 7-Zip, AutoHotkey και πολλά πολλά άλλα.

 

Συνειρμικά πρέπει να το έχω συνδέσει με προγράμματα που τα εγκαθιστώ άφοβα (a rare bird in the Windows universe) και που τα προτείνω ανεπιφύλακτα. :-P

 

Γενικά, έχει εντυπωσιακό μερίδιο αγοράς:

 

http://nsis.sourceforge.net/Users

 

O Inno είναι κι αυτός πολύ συμπαθητικός και διακριτικός.

 

Και τα δύο αυτά (αλλά κι ένα άλλο που είπε πιο πάνω ο Άλκης) υποστηρίζουν τον βασικό αλγόριθμο του 7Z (LZMA) και έτσι πετυχαίνουν και πολύ καλά μεγέθη.

 

Τα MSI όταν τα βλέπω κουμπώνομαι, για τους λόγους που λέει πιο πάνω ο Άλκης στα αρνητικά. Έχω ταλαιπωρηθεί κιόλας δυο-τρεις φορές. Τελευταία φορά βλαστήμησα με μια εγκατάσταση του OpenOffice.

 

@ alkisg

 

Αν θες μπορούμε να στεγάσουμε το ποστ στο Με ποιο πρόγραμμα; κι ας μην είναι κοινή απορία (προσωρινά τουλάχιστον, μέχρι να φτιαχτεί κάτι άλλο). Μόνο τα λινκ του λείπουν. :-)

 

Ευχαριστώ κι εσένα Eusebius τη βοήθεια και τις διευκρινήσεις. Όσο για το θέμα ανεξάρτητα από το πού θα φιλοξενηθεί εύχομαι να μεγαλώσει και να περιλάβει και άλλες εφαρμογές του είδους αυτού!

 

Να κάνω μία ακόμη ερώτηση:

Μία εφαρμογή που τρέχει στην κονσόλα αποτελείται από ένα μόνο .exe (δε ξέρω αν υπάρχει κάτι διαφορετικό). Όταν όμως εγκαθιστούμε ένα πρόγραμμα στο φάκελο εγκατάστασης εμφανίζονται πολλά αρχεία εκτός από το εκτελέσιμο. Αυτό είναι θέμα Installer, είναι θέμα προγραμματισμού, είναι ζήτημα κάποιας προγραμματιστικής τεχνικής; Τι ακριβώς παίζει με το γεγονός αυτό;

Δημοσ.

@Eusebious: νομίζω ότι παραείναι εξειδικευμένο για την κατηγορία software... Αν κάποια στιγμή φτιάξουμε ένα υπόμνημα "Προγραμματιστικά εργαλεία" εδώ, το ξαναγράφω.

 

@Pusher: να σου πω την αλήθεια δεν κατάλαβα ακριβώς την ερώτηση. Εννοείς π.χ. ένα πρόγραμμά σου που έφτιαξες να τρέχει στην κονσόλα, σε αντιδιαστολή με π.χ. τον φάκελο που είναι εγκατεστημένο το 7zip;

Το αν ένα πρόγραμμα αποτελείται ή όχι από πολλά αρχεία είναι θέμα του ίδιου του προγράμματος, όχι του installer. Προφανώς για την ώρα έχεις κάνει σχετικά απλά προγράμματα, έτσι δεν σου δημιουργήθηκε η ανάγκη για αρχεία δεδομένων, ή να φτιάξεις shared .dlls και να προσφέρεις υπηρεσίες σε άλλους, ούτε external help files κτλ.

Μην σε ανησυχεί αυτό, μόλις αυξηθεί η πολυπλοκότητα των προγραμμάτων σου θα δεις ότι θα χρειαστείς και άλλα αρχεία.

Δημοσ.
@Eusebious: νομίζω ότι παραείναι εξειδικευμένο για την κατηγορία software... Αν κάποια στιγμή φτιάξουμε ένα υπόμνημα "Προγραμματιστικά εργαλεία" εδώ, το ξαναγράφω.

 

@Pusher: να σου πω την αλήθεια δεν κατάλαβα ακριβώς την ερώτηση. Εννοείς π.χ. ένα πρόγραμμά σου που έφτιαξες να τρέχει στην κονσόλα, σε αντιδιαστολή με π.χ. τον φάκελο που είναι εγκατεστημένο το 7zip;

Το αν ένα πρόγραμμα αποτελείται ή όχι από πολλά αρχεία είναι θέμα του ίδιου του προγράμματος, όχι του installer. Προφανώς για την ώρα έχεις κάνει σχετικά απλά προγράμματα, έτσι δεν σου δημιουργήθηκε η ανάγκη για αρχεία δεδομένων, ή να φτιάξεις shared .dlls και να προσφέρεις υπηρεσίες σε άλλους, ούτε external help files κτλ.

Μην σε ανησυχεί αυτό, μόλις αυξηθεί η πολυπλοκότητα των προγραμμάτων σου θα δεις ότι θα χρειαστείς και άλλα αρχεία.

 

Εννοώ πως όσα προγράμματα έχω φτιάξει και τρέχουν στην κονσόλα, ανεξάρτητα από το μέγεθος του κώδικα, αποτελούνται από ένα .exe. Συνήθως όμως τα προγράμματα τα οποία εγκαθιστούμε στους υπολογιστές μας έχουν στο φάκελο, στον οποίον έχουν εγκατασταθεί εκτός από τα εκτελέσιμα και άλλα αρχεία. Πολλά από αυτά είναι dlls και άλλα έχουν διάφορες καταλήξεις!

Δημοσ.

Ναι, αυτό έλεγα. Πάρε παράδειγμα τον φάκελο του 7-zip:

 

7z.dll => Standalone .dll που περιέχει τις συναρτήσεις συμπίεσης/αποσυμπίεσης ώστε να μπορεί να χρησιμοποιηθεί από άλλα προγράμματα (π.χ. file managers τρίτων).

7z.sfx => εκτελέσιμο, είναι αυτό με το οποίο φτιάχνονται τα self extracting συμπιεσμένα αρχεία.

7zCon.sfx => το ίδιο αλλά για συμπιεσμένα αρχεία κονσόλας.

7zFM.exe => file manager, όποτε χρειάζεται συμπίεση/αποσυμπίεση καλεί το 7z.exe.

7z.exe => το .exe που κάνει τη συμπίεση.

7-zip.chm => αρχείο βοήθειας σε μορφή html help

7-zip.dll => Οι συναρτήσεις συμπίεσης/αποσυμπιέσης που χρησιμοποιεί το 7z.exe

7zip_pad.xml => Πληροφορίες εφαρμογής σε PADGen μορφή.

copying.txt => Redistribution license, συνηθίζεται σε gnu-style εφαρμογές

descript.ion => Πληροφορίες εφαρμογής σε norton commander μορφή.

History.txt => Πληροφορίες ιστορικού.

Lang => Φάκελος υποστήριξης διαφόρων γλωσσών.

License.txt => Άδεια χρήσης

readme.txt => No comment!

Uninstall.exe => Δημιουργήθηκε από τον NSIS installer για να μπορεί να γίνει uninstallation.

 

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

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...