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

Άποψη: 37223|Απάντηση: 1

[Πηγή] aspose.words για τη δημιουργία δοκιμαστικών χαρτιών

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 8/4/2016 4:44:24 μ.μ. | | |

Πρόσφατα, έκανα ένα διαδικτυακό έργο ομαδοποίησης χαρτιού. Οι κύριες λειτουργίες πραγματοποιούν στοιχειοθεσία λέξεων, προεπισκόπηση και δημιουργία δοκιμαστικών εγγράφων. Όταν πρόκειται για λειτουργίες λέξεων στην αρχή, ένα πράγμα που έρχεται στο μυαλό είναι το στοιχείο COM του γραφείου για τη λειτουργία του word. Χρειάστηκαν περίπου δύο εβδομάδες για να γραφτεί ο κώδικας για ολόκληρο το σύστημα. Μετά άρχισα να δοκιμάζω επανειλημμένα και ένιωσα καλά τοπικά και μπόρεσα να δημιουργήσω ομαλά ένα τεστ λέξεων και η απόδοση ήταν εντάξει. Οπότε ανυπομονούσα να το κυκλοφορήσω στον διακομιστή.

Το πρώτο είναι ότι ένα στοιχείο με CLSID {000209FF-0000-0000-C000-0000000046} στο εργοστάσιο COM αποτυγχάνει λόγω του ακόλουθου σφάλματος: 8000401a Το σύστημα δεν μπορεί να ξεκινήσει τη διαδικασία διακομιστή επειδή το αναγνωριστικό διαμόρφωσης είναι λανθασμένο. Ελέγξτε το όνομα χρήστη και τον κωδικό πρόσβασης. (Εξαίρεση από το HRESULT:0x8000401A).

Πρώτα απ 'όλα, όλα αυτά τα προβλήματα προκαλούνται από δικαιώματα και η λύση είναι απλώς η διαμόρφωση των αδειών. Δεν είναι χρήσιμο μόνο για το Excel και το Word, αλλά και για όλα τα προϊόντα του Office.

Για να φτάσετε στο σημείο, πρώτα, πληκτρολογήστε dcomcnfg στην εκτέλεση, ανοίξτε το component service manager->component service->my computer->DCOM-> βρείτε το αντίστοιχο έγγραφο εφαρμογής Microsoft excel/Microsoft word 97-2003 και, στη συνέχεια, κάντε δεξί κλικ στο χαρακτηριστικό για να ενεργοποιήσετε την άδεια εκκίνησης αρκεί για να το δώσετε στο OK. -------- κανένα πρόβλημα, αυτό το πρόβλημα λύνεται.



Ας μιλήσουμε για τη δεύτερη κατάσταση "Πρόβλημα απόδοσης": Δεδομένου ότι το σύστημά μας είναι το επόμενο υποσύστημα της ιστοσελίδας μας. Υπάρχει λοιπόν μια συγκεκριμένη βάση χρηστών. Στο σύστημα είχε πρόσβαση μεγάλος αριθμός χρηστών μόλις τέθηκε σε λειτουργία. Στην αρχή, τετρακόσιες ή πεντακόσιες εργασίες ομαδοποιούνταν την ημέρα και σιγά σιγά ο όγκος των εργασιών γινόταν όλο και μεγαλύτερος, γεγονός που ήταν η αρχή των προβλημάτων με το σύστημα. Το πρώτο είναι ότι υπάρχουν πολλές winWord.exe διαδικασίες στη διαδικασία. Δεν μπορεί να τελειώσει. Αν και ο κώδικας συστήματος περιέχει τη διαδικασία Quit και ανακυκλώνει πόρους, το πρόβλημα δεν λύνεται ποτέ. Η συνέπεια ενός μεγάλου αριθμού διεργασιών winword.exe είναι ότι ο διακομιστής επιβραδύνεται. Θα πρέπει να είναι ιδιαίτερα εντατική μνήμη για αυτό το στοιχείο.

Δεν υπάρχει τρόπος να λυθεί το πρόβλημα. Ο τελευταίος απατεώνας ήταν να γράψω μια υπηρεσία χρονισμού που σκότωσε τη διαδικασία winword που δεν εκτελούνταν. Αυτό αντιμετωπίζει τα συμπτώματα αλλά όχι τη βασική αιτία. 、



Εδώ θέλω να πω ότι το Microsoft Office είναι ένα λογισμικό εφαρμογών γραφείου για επιτραπέζιους υπολογιστές που αναπτύχθηκε κυρίως για απλούς χρήστες, έχει πλούσια στοιχεία διεπαφής χρήστη (διεπαφή χρήστη) και είναι ένα σύνολο καθαρού τοπικού λογισμικού ή λογισμικού πελάτη. Η διεπαφή αυτοματισμού του Word έχει σχεδιαστεί κυρίως για να διευκολύνει τις κλήσεις εφαρμογών παραθύρων. Για παράδειγμα, εγγενείς εφαρμογές που αναπτύχθηκαν από Delphi, VB, C# Winform κ.λπ. Αν και είναι δυνατό να αναγκάσετε το Visible να είναι ψευδές και το Word μπορεί να εκτελεστεί σε κώδικα από την πλευρά του διακομιστή, εξακολουθεί να φέρνει πολλά δύσκολα προβλήματα.

1. ASP.NET βασίζεται στην αρχιτεκτονική B/S. Στην αρχιτεκτονική B/S, η πρόσβαση των χρηστών είναι ταυτόχρονη, πράγμα που σημαίνει ότι οι N χρήστες συχνά υποβάλλουν αιτήματα σε μια σελίδα διακομιστή ταυτόχρονα. Σε αυτήν την περίπτωση, η κλήση αυτοματισμού του Word συχνά πεθαίνει από καιρό σε καιρό.

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

3. Επειδή το Word είναι ένα πολύπλοκο πρόγραμμα επιτραπέζιου υπολογιστή και δεν πληροί τα πρότυπα των γενικών προγραμμάτων υπηρεσιών Web για απλότητα και αποτελεσματικότητα, αργεί να εκτελεστεί από την πλευρά του διακομιστή και θα καταναλώσει πολλούς πόρους (CPU, μνήμη), ειδικά δεν μπορεί να υποστηρίξει μεγάλο αριθμό χρηστών για πρόσβαση ταυτόχρονα και οι πόροι θα εξαντληθούν γρήγορα.

4. Οι περισσότεροι προγραμματιστές δεν είναι σχετικά εξοικειωμένοι με την τεχνολογία COM και συχνά υπάρχουν ορισμένα σφάλματα κώδικα κατά τον προγραμματισμό και την κλήση της διεπαφής Word και είναι δύσκολο να ελεγχθεί το πρόβλημα, το οποίο είναι ένας συχνός παράγοντας που προκαλεί νεκρές διεργασίες. Οι νεκρές διεργασίες του Word όχι μόνο καταναλώνουν πόρους διακομιστή, αλλά συχνά προκαλούν την αποτυχία των σελίδων διακομιστή να δημιουργήσουν νέα αντικείμενα αυτοματισμού του Word και να συνεχίσουν να λειτουργούν. Ορισμένοι χρήστες του Διαδικτύου πρότειναν μια λύση νεκρής διαδικασίας: προγραμματισμός για να σκοτώσει τη νεκρή διαδικασία του Word, η οποία είναι μια πρακτική θεραπείας των συμπτωμάτων αλλά όχι της βασικής αιτίας, η νεκρή διαδικασία του Word έχει φύγει, αλλά το μη φυσιολογικό κλείσιμο του Word θα κάνει πολλούς πόρους να μην μπορούν να απελευθερωθούν εγκαίρως. Πόσο καιρό θα διαρκέσει ένας τέτοιος διακομιστής ιστού είναι δύσκολο να πούμε.



Προκειμένου να λυθούν αυτά τα προβλήματα, μετά από ολοκληρωμένη έρευνα και σύγκριση, ο συγγραφέας διαπίστωσε ότι υπάρχει ένα συστατικό στοιχείο aspose.words στο Διαδίκτυο, το οποίο εξαλείφει εντελώς τα παραπάνω προβλήματα και συνιστάται να το μοιραστείτε μαζί σας.



Παρακάτω θα μοιραστώ μαζί σας μέρος του κώδικα λειτουργίας του στοιχείου aspose.words με την ελπίδα ότι θα είναι χρήσιμο σε όσους το χρειάζονται





Αρχικός σύνδεσμος: http://blog.csdn.net/fraing/article/details/8989736




Προηγούμενος:[Βοήθεια] Αν θέλετε να δημιουργήσετε έναν ιστότοπο, μπορείτε να κάνετε html για να με βοηθήσετε να τροποποιήσω τον πηγαίο κώδικα της επόμενης μεμονωμένης σελίδας. Ζητήστε βοήθεια
Επόμενος:Aspose.Words για τη δημιουργία εγγράφων PDF
Δημοσιεύτηκε στις 3/5/2020 9:07:08 π.μ. |
Καλή ανάρτηση, χρήσιμη
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com