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

Άποψη: 50236|Απάντηση: 3

[Πηγή] Η C# τοποθετεί τα DLL της βιβλιοθήκης αναφοράς σε υποφακέλους μέσω ανίχνευσης

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2020-11-10 17:46:35 | | | |
Ζήτηση:

Υπάρχουν τρεις τύποι DLL στο έργο, πάρα πολλά και ακατάστατα. Πώς να τα τοποθετήσετε σε τρεις υποκαταλόγους
Σαν τι:
Το Dev τοποθετείται στον κατάλογο Devexpress
Τοποθετήστε το έργο της βιβλιοθήκης αναφοράς σας στον κατάλογο Lib
Τα DLL τρίτων τοποθετούνται στον κατάλογο Oth

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

Παράδειγμα:

Το net2 είναι ένα έργο κονσόλας, θα αναφέρεται στη βιβλιοθήκη κλάσης ClassLibrary4, η μεταγλωττισμένη εφαρμογή και το dll θα βρίσκονται στον ίδιο κατάλογο, θέλω να ClassLibrary4.dll βάλω κάτω από τον δοκιμαστικό φάκελο κάτω από τον κατάλογο προγράμματος, το βάζουμε απευθείας, θα ρίξει μια εξαίρεση:

Ανεπίλυτη εξαίρεση: System.IO.FileNotFoundException: Απέτυχε η φόρτωση ενός αρχείου ή μιας συγκρότησης "ClassLibrary4, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" ή μιας από τις εξαρτήσεις του. Το σύστημα δεν μπορεί να βρει το καθορισμένο αρχείο.
   Στο net2. Program.Main(Συμβολοσειρά[] args)

Λύση

Επεξεργαστείτε το αρχείο net2.exe.config και προσθέστε τις ρυθμίσεις λήψης μετρήσεων ως εξής:

Εάν υπάρχουν δύο διαφορετικά dll που πρέπει να τοποθετηθούν σε δύο διαφορετικούς φακέλους, μέσαΧρησιμοποιήστε ερωτηματικά για να υποδείξετε διαφορετικούς φακέλουςΓια παράδειγμα:


ClassLibrary4 Κώδικας:

Κωδικός NET2:


Δοκιμάστε να εκτελέσετε το πρόγραμμα όπως φαίνεται παρακάτω:


Παρατήρηση:Μπορείτε να γράψετε ένα σενάριο νυχτερίδας και να βάλετε το dll της βιβλιοθήκης σε έναν υποκατάλογο κατά τη διάρκεια του χρόνου μετά τη δημιουργία της συναρμολόγησης

(Τέλος)






Προηγούμενος:Να είστε προσεκτικοί με το System.Environment.CurrentDirectory για να λάβετε τον τρέχοντα κατάλογο
Επόμενος:. .NET MySQL Connector Conflict DbProviderFactories (.NET MySQL Connector Conflict DbP...
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 2020-11-10 18:18:44 |
Εάν το C++ dll τοποθετηθεί στον υποκατάλογο του προγράμματος, μπορεί να οριστεί προσθέτοντας μεταβλητές περιβάλλοντος

Για παράδειγμα:

Τοποθετήστε το dll κάτω από τον κατάλογο δοκιμής



Δημοσιεύτηκε στις 2021-7-16 22:42:52 |
Πολυμαθής......
Δημοσιεύτηκε στις 2023-2-25 21:18:42 |
Ελπίζω πραγματικά αυτό να είναι αυτό που ψάχνω
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com