Αυτήν τη στιγμή είστε εκτός σύνδεσης, σε αναμονή για επανασύνδεση στο Internet
Είσοδος

Αναδιανομή του κοινόχρηστου στοιχείου χρόνου εκτέλεσης C σε Visual C++

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.

326922
Περίληψη
Όταν δημιουργείτε μια εφαρμογή στο Microsoft Visual Studio και η εφαρμογή χρησιμοποιεί τις βιβλιοθήκες χρόνου εκτέλεσης C (CRT), να διανείμετε το κατάλληλο αρχείο DLL CRT από την παρακάτω λίστα με την εφαρμογή σας:
  • Msvcr100.dll για το Microsoft Visual C++ 2010
  • Msvcr90.dll για το Microsoft Visual C++ 2008
  • Msvcr80.dll για το Microsoft Visual C++ 2005
  • Msvcr71.dll για το Microsoft Visual C++ .NET 2003 με το Microsoft .NET Framework 1.1
  • Msvcr70.dll για το Microsoft Visual C++ .NET 2002 με το Microsoft .NET Framework 1.0
Για Msvcr70.dll ή Msvcr71.dll, θα πρέπει να εγκαταστήσετε το CRT DLL στον κατάλογο αρχείων προγράμματος εφαρμογής. Δεν πρέπει να εγκαταστήσετε αυτά τα αρχεία σε καταλόγους του συστήματος των Windows. Για Msvcr80.dll και Msvcr90.dll, θα πρέπει να εγκαταστήσετε το CRT ως συγκροτήσεις side-by-side των Windows. Για Msvcr100.dll, μπορείτε να χρησιμοποιήσετε ένα packge VCREDIST_*.exe ή να εγκαταστήσετε το CRT DLL στον κατάλογο αρχείων προγράμματος εφαρμογής.
Περισσότερες πληροφορίες
Το κοινόχρηστο αρχείο DLL CRT έχει διανεμηθεί από τη Microsoft στο παρελθόν ως στοιχείο κοινόχρηστο συστήματος (msvcp60.dll, κ.λπ.). Αυτό μπορεί να προκαλέσει προβλήματα κατά την εκτέλεση εφαρμογών που συνδέονται με μια διαφορετική έκδοση του CRT σε υπολογιστές που δεν έχουν τις σωστές εκδόσεις των CRT DLL που είναι εγκατεστημένη. Αυτό συνήθως αναφέρεται ως η αιτία του προβλήματος "Διένεξη DLL".

Για να αντιμετωπίσετε αυτό το ζήτημα, το αρχείο DLL CRT δεν θεωρείται πλέον ένα αρχείο συστήματος, συνεπώς, να διανείμετε το αρχείο DLL CRT με οποιαδήποτε εφαρμογή που βασίζεται σε αυτό. Επειδή δεν είναι πλέον ένα στοιχείο του συστήματος, το εγκαταστήσετε στον κατάλογο Program Files εφαρμογές με άλλο κώδικα συγκεκριμένη εφαρμογή. Αυτό εμποδίζει την εφαρμογή σας να χρησιμοποιούν άλλες εκδόσεις της βιβλιοθήκης του CRT που μπορεί να εγκατασταθεί σε τις διαδρομές συστήματος.

Visual C++ .NET 2003 ή το Visual C++ .NET 2002 εγκαθιστά το DLL CRT στον κατάλογο System32 σε ένα σύστημα ανάπτυξης. Αυτό εγκαθίσταται ως εξυπηρέτηση για τον προγραμματιστή. Διαφορετικά, όλα τα έργα που έχουν δημιουργηθεί με το Visual C++ που συνδέονται με το κοινόχρηστο CRT απαιτούν ένα αντίγραφο του αρχείου DLL στον κατάλογο κατασκευής για τον εντοπισμό σφαλμάτων και την εκτέλεση. Visual C++ 2005 και Visual C++ 2008 θα πρέπει να εγκαταστήσετε το αρχείο DLL CRT ως μια συγκρότηση side-by-side των Windows στα Windows XP και νεότερες εκδόσεις λειτουργικών συστημάτων. Τα Windows 2000 δεν υποστηρίζει συγκροτήσεις side-by-side. Στα Windows 2000, το αρχείο DLL CRT είναι εγκατεστημένο στον κατάλογο System32.

Όταν διανέμετε εφαρμογές που απαιτούν τη βιβλιοθήκη κοινόχρηστων CRT στο CRT DLL, σας συνιστούμε να χρησιμοποιήσετε τη λειτουργική μονάδα συγχώνευσης CRT.msm που περιλαμβάνεται με το Visual C++ αντί για απευθείας τη διανομή του αρχείου DLL.

Οι συγκροτήσεις side-by-side των Windows

Msvcr80.dll με Visual C++ 2005 και Msvcr90.dll με Visual C++ 2008 ανακατανέμονται ως συγκροτήσεις side-by-side των Windows εκτός από στα Windows 2000. Θα πρέπει να εγκαταστήσετε αυτές τις εκδόσεις του το CRT σε υπολογιστές προορισμού εκτελώντας την εφαρμογή Vcredist_x86.exe που περιλαμβάνεται με το Visual Studio. Υπάρχουν επίσης προγράμματα εγκατάστασης για το x 64 και IA-64 πλατφόρμες. Εναλλακτικά, μπορείτε να χρησιμοποιήσετε τη λειτουργική μονάδα συγχώνευσης msm CRT που παρέχεται με το Visual Studio για να συσκευάσετε το πρόγραμμα εγκατάστασης CRT στη δική σας εφαρμογή προγράμματος εγκατάστασης. Αυτό θα καταστήσει την CRT διαθέσιμη ως κοινόχρηστη συγκρότηση για όλες τις εφαρμογές επειδή έχει εγκατασταθεί στον κατάλογο \windows\winsxs υποστηριζόμενα λειτουργικά συστήματα.

Msvcr100.dll με το Visual C++ 2010 δεν κάνει χρήση συγκροτήσεων side-by-side των Windows.
Αναφορές
Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη Microsoft Τοποθεσία Web του Developer Network (MSDN): Για περισσότερες πληροφορίες σχετικά με τα Windows συγκροτήσεις side-by-side, επισκεφθείτε τις ακόλουθες τοποθεσίες της Microsoft Developer Network (MSDN) στο Web:
DLL Hell

Προειδοποίηση: Αυτό το άρθρο είναι μεταφρασμένο αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 326922 - Τελευταία αναθεώρηση: 03/10/2013 02:31:00 - Αναθεώρηση: 8.0

  • Microsoft Visual C++ 2008 Express Edition
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • kbinfo kbmt KB326922 KbMtel
Σχόλια