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

 

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

Windows Scheduled Task call from C#

Îåêßíçóå áðü ôï ìÝëïò dtakis. Τελευταία δημοσίευση από το μέλος dtakis στις 02-11-2009, 11:25. Υπάρχουν 12 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  12-10-2009, 13:37 54403

    Windows Scheduled Task call from C#

    Γεια στην παρέα, σκεφτόμουν σήμερα ότι είναι καλύτερο να χρησιμοποιούμε προγραμματιστικά τον Windows Task Scheduler παρά Windows Services για να κάνουμε επαναλαμβανόμενες εργασίες. Ο Windows Task Scheduler προσφέρει καλή λειτουργικότητα και αξιοπιστία κατά τη γνώμη μου ειδικά η έκδοση που υπάρχει σε Vista/7 & Windos Server 2008.

    Έχω βρει πολλά παραδείγματα πως να δημιουργήσουμε ένα Task αλλά με ενδιαφέρει να καλώ κυρίως άλλα έτοιμα Scheduled Tasks για να κάνω μια σειρά από εργασίες.

    Έχετε ποτέ τρέξει κάποιο Scheduled Task από C#;

    Δημοσίευση στην κατηγορία: , ,
  •  12-10-2009, 14:50 54405 σε απάντηση της 54403

    Απ: Windows Scheduled Task call from C#

    Ο Task Scheduler έχει ένα COM interface το οποίο μπορείς να καλέσεις μέσω interop. Μπορείς όμως να χρησιμοποιήσεις και το Task Scheduler Wrapper που θα βρεις στο Codeplex ο οποίος απλοποιεί τη διαδικασία.

    Ουσιαστικά αυτό που σε ενδιαφέρει είναι να κάνεις enumerate τα υπάρχοντα tasks και όταν βρεις ένα να του στείλεις το Exec action. Ένα παράδειγμα για enumeration θα βρεις στο Displaying Task Names and States στο MSDN. Το πως θα εκτελέσεις ένα action φαίνεται στο home page του Task Scheduler Wrapper.

     


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  12-10-2009, 16:24 54410 σε απάντηση της 54405

    Απ: Windows Scheduled Task call from C#

    Πως γίνεται ό,τι βρίσκεις να είναι σε VB (εδώ VBScript );; Χεχεχε! Ευχαριστώ πάντως Smile

    Να δω πως θα γίνει σε C#

  •  12-10-2009, 17:30 54411 σε απάντηση της 54405

    Απ: Windows Scheduled Task call from C#

    Τώρα που το σκέφτομαι δεν έχει νόημα να εκτελέσω ένα υπάρχον task καθώς περιέχει ήδη properties για trigger, startdate, enddate κτλ συνεπώς καλύτερα να δημιουργήσω ένα που θα αφαιρέσω αμέσως μετά. Δεν χρειάζεται να κάνω enumerate τα υπάρχοντα...
  •  12-10-2009, 17:58 54412 σε απάντηση της 54411

    Απ: Windows Scheduled Task call from C#

    Τί θέλεις να κάνεις? Αν απλά θέλεις να εκτελέσεις "κάτι", απλά τρέξε τον κώδικα! Δεν υπάρχει λόγος να φτιάξεις task για να το εκτελέσεις.

    Μάλλον θα πρέπει να εξηγήσεις τί θέλεις να κάνεις.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  13-10-2009, 10:37 54421 σε απάντηση της 54403

    Απ: Windows Scheduled Task call from C#

    dtakis:

    ...είναι καλύτερο να χρησιμοποιούμε προγραμματιστικά τον Windows Task Scheduler παρά Windows Services για να κάνουμε επαναλαμβανόμενες εργασίες. Ο Windows Task Scheduler προσφέρει καλή λειτουργικότητα και αξιοπιστία κατά τη γνώμη μου ειδικά η έκδοση που υπάρχει σε Vista/7 & Windos Server 2008...

    Προσωπικά διαφωνω, δεν μπορείς να αντικαταστήσεις την αξιοπιστία και την λειτουργικότητα ενός Service με ένα Task Scheduler.


  •  13-10-2009, 11:21 54423 σε απάντηση της 54421

    Απ: Windows Scheduled Task call from C#


    gtas:
    dtakis:

    ...είναι καλύτερο να χρησιμοποιούμε προγραμματιστικά τον Windows Task Scheduler παρά Windows Services για να κάνουμε επαναλαμβανόμενες εργασίες. Ο Windows Task Scheduler προσφέρει καλή λειτουργικότητα και αξιοπιστία κατά τη γνώμη μου ειδικά η έκδοση που υπάρχει σε Vista/7 & Windos Server 2008...

    Προσωπικά διαφωνω, δεν μπορείς να αντικαταστήσεις την αξιοπιστία και την λειτουργικότητα ενός Service με ένα Task Scheduler.


    Φιλε Gtas κι εγω προσωπικά διαφωνώ , μπορεις ανετα να αντικαταστησεις ενα service με τον task scheduler, για 3 απλους λογους:

    1)Πολυ καλύτερο functionality, κάθε πότε θες να εκτελεστεί κατι, ανα ωρα ανα μερα ανα βδομαδα μηνα μια φορα μπλα μπλα μπλα πολλες παρα πολλες επιλογες...

    2)απο πισω μην ξεχνας οτι ειναι service ο task sheduler, αρα αν καποιος δεν κανει χοντραδα αυτο θα τρεχει το ιδιο αξιοπιστα με οποιοδηποτε αλλο service.Wink

    3)μπορεις πολυ ευκολοτερα να κανεις πειραματα και ποιο ασφαλει με τον task scheduler απο το να εγκαθιστάς services στο συστημα και να τα ξεχνας ή να μην γινοντε για χ,ψ λογους uninstall ευκολα,

    απο το να ανοιγω cmd και να "βαραω" εντολες για να κανω κατι στο service, απλα επιλέγω το task που εφτιαξα και ελεγχο απο το ομορφο UI τη εκανα με ευκολια και αν δεν μου αρεσει κατι ...delete. ουτε εντολες ουτε αγχος μην "χαλασω" το υπολοιπο συστημα ποτε.

    μου αρεσε το θεμα πηρα αρκετες ιδες για καποια πραγματάκια που ηθελα να φτιαξω.

    tnx!


    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  13-10-2009, 11:40 54431 σε απάντηση της 54423

    Απ: Windows Scheduled Task call from C#

    Ότι χρειάζετε ο καθένας...

     


  •  13-10-2009, 13:59 54441 σε απάντηση της 54423

    Απ: Windows Scheduled Task call from C#

    Οι ευκολίες που έχεις με ένα scheduled task είναι διάφορες, αλλά το service έχει ένα πολύ σημαντικό ανταγωνιστικό πλεονέκτημα: υποστηρίζει clustering, οπότε μπορείς να το κάνεις deploy σε ένα σύστημα που απαιτεί high availability χωρίς τεχνάσματα.
    Νατάσα Μανουσοπούλου
  •  13-10-2009, 19:52 54455 σε απάντηση της 54441

    Απ: Windows Scheduled Task call from C#

    ναι αλλα εδω παμε αλλου, πολυ ποιο "βαρια" δουλεια το clustering, εγω ελεγα για κατι που θες να λαμβανει μερος τοπικα στο μηχανημα σου κανα backup κανα transaction oxi πολυ βαρυ κτλ κτλ, καλα για dedicated jobs και μεγαλες δουλειές ενταξη θα πας σε service clustering και τετοια...
    This Business Is Binary. You are a 1 or a 0. Alive or Dead.-
  •  13-10-2009, 20:25 54457 σε απάντηση της 54455

    Απ: Windows Scheduled Task call from C#

    Johnny, Ελληνικά .....


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  13-10-2009, 20:43 54458 σε απάντηση της 54457

    Απ: Windows Scheduled Task call from C#

    Αν και ξεφύγαμε εντελώς από το θέμα που είχε η αρχική δημοσίευση, και σίγουρα θα υπάρχουν περιπτώσεις

    που θα θέλεις να χρησιμοποιήσεις τον Task Scheduler ή θα πρέπει να κάνεις κάτι τέτοιο για οποιοδήποτε λόγο,

    και ασχέτως με το τι υποστηρίζει η μια και η άλλη λύση τεχνολογικά, θα φτιάξεις ένα service που θα ελέγχει ένα άλλο

    service και θα υπάρχει πάντα εξάρτηση, ενώ διαφορετικά και ίσως με την ίδια προσπάθεια (γράψιμο κτλ.),

    να επιτύχεις το δικό σου implementation.

     


  •  02-11-2009, 11:25 54888 σε απάντηση της 54458

    Απ: Windows Scheduled Task call from C#

    Πιστεύω ότι ο Task Scheduler είναι αρκετά αξιόπιστος όταν η εφαρμογή σου κάνει κάτι απλό ανά προκαθορισμένα διαστήματα και δεν θέλεις να κάτσεις να γράψεις ένα ολόκληρο set από timers για να ελέγχεις κάθε πότε θα πρέπει να τρέχει. Δλδ 20% actual code & 80% timers check & coding.

    Επίσης αν κρασάρει για κάποιο λόγο το Service σου θα μείνει κάτω μέχρι να επιληφθεί κάποιος επί του προβλήματος ενώ ένα Scheduled Task θα ανακάμψει στην επόμενη εκτέλεση εκτός αν το bug είναι μόνιμο από κάποια αλλαγή κατάστασης εκτός της εφαρμογής που δεν έχει προβλεφθεί (άπειρες πιθανότητες) :)

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