|
|
Δημοσιεύτηκε στις 27/4/2019 5:56:09 μ.μ.
|
|
|
|

πρόλογος
Σε συνέχεια του προηγούμενου άρθρου σχετικά με το Windows Task Scheduler, αυτό το άρθρο θα καταγράψει τη δημιουργία υπηρεσιών των Windows.
Περιβάλλον & Εργαλεία
>Σύστημα Windows 10
>VS 2017
Κείμενο
1: Δημιουργήστε μια νέα λύση και δημιουργήστε μια υπηρεσία Windows. Το όνομα είναι "WindowsServiceDemo.exe”
2: Κάντε διπλό κλικ στο αρχείο "Service1.cs", κάντε δεξί κλικ στον κενό χώρο - > επιλέξτε "Προσθήκη προγράμματος εγκατάστασης".
3: Στα δύο στοιχεία που δημιουργούνται, κάντε κλικ στο στοιχείο "serviceProcessInstaller1" και στη φόρμα ιδιοτήτων, ορίστε τον τύπο λογαριασμού "Λογαριασμός" σε "LocalSystem".
4: Στα δύο στοιχεία που δημιουργούνται, κάντε κλικ στο στοιχείο "serviceInstaller1", στη φόρμα ιδιοτήτων, ορίστε τις αντίστοιχες ιδιότητες και, στη συνέχεια, αποθηκεύστε.
5: Κάντε δεξί κλικ στο "Service1.cs" – > επιλέξτε "Προβολή κωδικού".
6: Στην αντίστοιχη μέθοδο, γράψτε τη λογική επεξεργασίας. Μέθοδος OnStart(): αναφέρεται στη μέθοδο που εισέρχεται κατά την εκκίνηση της υπηρεσίας των Windows. OnStop(): Όπως υποδηλώνει το όνομα, αυτός είναι ο τρόπος εισαγωγής όταν σταματά η υπηρεσία. Μπορούμε να γράψουμε ένα χρονόμετρο για να αφήσουμε το πρόγραμμα να επεξεργαστεί τη λογική στην κανονική επαφή.
7: Δημιουργήστε δύο αρχεία σημειωματάριου, ονομάστε και τροποποιήστε τα ονόματα των επιθημάτων "Install.bat" και "Uninstall.bat" αντίστοιχα Σημείωση: Το όνομα του επιθέματος είναι .bat. Επικολλήστε το μέσα στο έργο. Και αλλάξτε το χαρακτηριστικό σε "Αντιγραφή σε τοπικό".
8: Τα δύο αρχεία που δημιουργήσαμε μόλις τώρα είναι για την εγκατάσταση της υπηρεσίας και την απεγκατάσταση της υπηρεσίας. Τώρα γράψτε τον κωδικό παρτίδας σε αυτά τα δύο αρχεία και αποθηκεύστε. Ανοίξτε το αρχείο "Install.bat" και γράψτε τον παρακάτω κώδικα
Σημείωση: Το "WindowsServiceDemo.exe" είναι το πρόγραμμα exe που μόλις δημιουργήθηκε. Το "AServiceTest" είναι το "ServiceName" που έχει οριστεί στο στοιχείο "serviceInstaller1".
Ανοίξτε το αρχείο "Uninstall.bat" και γράψτε τον παρακάτω κώδικα
9: Το F6 το δημιουργεί. Στον κατάλογο του έργου "bin\Debug". Κάντε δεξί κλικ στο "Install.bat" - > επιλέξτε "Εκτέλεση ως διαχειριστής".
Μόλις ολοκληρωθεί η εγκατάσταση της υπηρεσίας. Μπορούμε να δούμε ότι το αρχείο "Log.txt" γράφει μια γραμμή δεδομένων κάθε 10 δευτερόλεπτα.
Μπορούμε να δούμε τις εγκατεστημένες υπηρεσίες. Εκτέλεση – > εισαγάγετε "services.msc" enter.
Σταματήστε την υπηρεσία τώρα. Κάντε δεξί κλικ στο "Uninstall.bat" - > επιλέξτε "Εκτέλεση ως διαχειριστής".
Μετά την απεγκατάσταση της υπηρεσίας. Μπορούμε να δούμε ότι το αρχείο "Log.txt" έχει επίσης μια γραμμή δεδομένων γραμμένη σε αυτό.
#Εντοπισμός σφαλμάτων υπηρεσίας των Windows
Οι υπηρεσίες των Windows δεν μπορούν να ξεκινήσουν απευθείας με εντοπισμό σφαλμάτων F5, F10. Λοιπόν, πώς να διορθώσετε το πρόγραμμα εάν υπάρχει κάποια ανωμαλία; 1: Πρώτα απ 'όλα, χρησιμοποιήστε τον διαχειριστή για να εκτελέσετε το αρχείο "Install.bat" και αφήστε το πρόγραμμα να εκτελεστεί πρώτα.
2: Επιστρέψτε στο VS και επιλέξτε "Εντοπισμός σφαλμάτων" στη γραμμή μενού - > επιλέξτε "Επισύναψη στη διαδικασία".
3: Στην αναδυόμενη φόρμα, επιλέξτε "Εμφάνιση όλων των διαδικασιών των χρηστών", βρείτε την εφαρμογή .exe που δημιουργήσαμε και κάντε κλικ στο "Επισύναψη".
4: Σπάστε το σημείο στη μέθοδο, έτσι ώστε όταν εκτελείται για ορισμένο χρονικό διάστημα, να μπορεί να ενεργοποιήσει τον εντοπισμό σφαλμάτων.
Επίλογος
Ο εντοπισμός σφαλμάτων της υπηρεσίας των Windows είναι πολύ ενοχλητικός, μερικές φορές το πρόγραμμα είναι γραμμένο σε πρόβλημα και η υπηρεσία δεν μπορεί να ξεκινήσει, γεγονός που καθιστά πιο δύσκολο τον εντοπισμό σφαλμάτων. Γενικά, η σύνταξη υπηρεσιών των Windows θα συνοδεύεται από μια εφαρμογή κονσόλας. Διορθώστε το στην εφαρμογή της κονσόλας και, στη συνέχεια, μετακινήστε το στις Υπηρεσίες των Windows. Το επόμενο θέμα θα περιγράψει έναν απλούστερο τρόπο δημιουργίας μιας υπηρεσίας Windows.
Σημείωση: Τα αρχεία δέσμης που εκκινήθηκαν και απεγκαταστάθηκαν από τα δύο προγράμματα πρέπει να εκτελούνται ως διαχειριστές. Διαφορετικά, θα είναι λάθος.
|
Προηγούμενος:Κοινοί αλγόριθμοι για κοινή χρήση μεγάλων δεδομένων (εφαρμογές)Επόμενος:Η χρήση του Topshelf για προγραμματισμένες εργασίες εκτέλεσης C#
|