Αναγν. άρθρου: 950986 - Τελευταία αναθεώρηση: Σάββατο, 25 Δεκεμβρίου 2010 - Αναθεώρηση: 2.0

ΕΝΗΜΕΡΩΣΗ: In το .NET Framework 2.0 Service Pack 1, η μέθοδος ModuleBuilder.GetTypeToken επιστρέφει εσφαλμένο διακριτικό

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

Σε αυτήν τη σελίδα

Ανάπτυξη όλων | Σύμπτυξη όλων

Συμπτώματα

Στο Microsoft .NET Framework 2.0 Service Pack 1, τοModuleBuilder.GetTypeTokenη μέθοδος επιστρέφει εσφαλμένο διακριτικό.

ΣΗΜΕΙΩΣΗΑυτό το ζήτημα δεν παρουσιάζεται στο .NET Framework 2.0.

Για παράδειγμα, ο κώδικας μπορεί να περιέχει τις ακόλουθες πληροφορίες.
try
            {
                AssemblyBuilder assb = AppDomain.CurrentDomain.DefineDynamicAssembly(new AssemblyName("MyAssembly"), AssemblyBuilderAccess.ReflectionOnly);
                ModuleBuilder modb = assb.DefineDynamicModule("MyModule");
                Type t = typeof(object).MakeArrayType();
                int Token = modb.GetTypeToken(t).Token;
                Console.WriteLine("Token of type \"{0}\" is 0x{1}", t.ToString(), Token.ToString("x08"));
                Type t2 = modb.ResolveType(Token);
                Console.WriteLine("Token 0x{1} resolved to type \"{0}\"", t2.ToString(), Token.ToString("x08"));

            }
            catch (Exception xcpt)
            {
                Console.WriteLine("An exception of type {0} occurred:", xcpt.GetType());
                Console.WriteLine("{0}", xcpt.Message);
                Console.WriteLine("{0}", xcpt.StackTrace);
            }
Αφού δημιουργήσετε τον κώδικά σας, τα δεδομένα εξόδου παρόμοια με την ακόλουθη:
Token of type "System.Object[]" is 0x01000001
An exception of type System.TypeLoadException occurred:
Could not load type 'System.Object[]' from assembly 'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
   at System.ModuleHandle.ResolveType(Int32 typeToken, RuntimeTypeHandle* typeInstArgs, Int32 typeInstCount, RuntimeTypeHandle* methodInstArgs, Int32 methodInstCount)
   at System.ModuleHandle.ResolveTypeHandle(Int32 typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext)
   at System.Reflection.Module.ResolveType(Int32 metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments)
   at System.Reflection.Module.ResolveType(Int32 metadataToken)
   at tryfix401752.Program.Main(String[] args) in D:\KB950986\Program.cs:line 26

Προτεινόμενη αντιμετώπιση

Πληροφορίες άμεσης επιδιόρθωσης

Μια επείγουσα επιδιόρθωση που υποστηρίζεται είναι τώρα διαθέσιμη από τη Microsoft. Ωστόσο, αυτή η επείγουσα επιδιόρθωση προορίζεται μόνο για τη διόρθωση του ζητήματος που περιγράφεται σε αυτό το άρθρο. Εφαρμόστε τη μόνο σε συστήματα που αντιμετωπίζουν το συγκεκριμένο ζήτημα. Αυτή η επείγουσα επιδιόρθωση ενδέχεται να υποβληθεί σε πρόσθετο έλεγχο. Επομένως, εάν αυτό το ζήτημα δεν σας επηρεάζει ιδιαίτερα, σας συνιστούμε να περιμένετε έως το επόμενο service pack του .NET Framework 2.0 που περιέχει αυτήν την επείγουσα επιδιόρθωση.

Για την άμεση επίλυση αυτού του ζητήματος, επικοινωνήστε με την Εξυπηρέτηση Πελατών της Microsoft (Microsoft Customer Support Services) για να αποκτήσετε την επείγουσα επιδιόρθωση. Για μια πλήρη λίστα αριθμών τηλεφώνου υπηρεσίες υποστήριξης πελατών της Microsoft και πληροφορίες σχετικά με το κόστος υποστήριξης, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
ΣΗΜΕΙΩΣΗΣε ειδικές περιπτώσεις, εάν ένας μηχανικός υποστήριξης της Microsoft κρίνει ότι μια συγκεκριμένη ενημερωμένη έκδοση θα επιλύσει το ζήτημα, ενδέχεται να μην ισχύσουν οι χρεώσεις που υφίστανται κανονικά για κλήσεις υποστήριξης. Για πρόσθετες ερωτήσεις υποστήριξης και για θέματα που δεν αφορούν τη συγκεκριμένη ενημερωμένη έκδοση, θα ισχύσουν οι συνηθισμένες χρεώσεις υποστήριξης.

ΠΡΟΫΠΟΘΕΣΕΙΣ

Πρέπει να έχετε το .NET Framework 2.0 Service Pack 1 εγκατεστημένο για να εφαρμόσετε αυτήν την επείγουσα επιδιόρθωση.

Απαιτήσεις επανεκκίνησης

Δεν χρειάζεται να κάνετε επανεκκίνηση του υπολογιστή μετά την εφαρμογή αυτής της άμεσης επιδιόρθωσης.

Πληροφορίες αντικατάστασης άμεσης επιδιόρθωσης

Αυτή η επείγουσα επιδιόρθωση δεν αντικαθιστά άλλες επείγουσες επιδιορθώσεις.

ΠΛΗΡΟΦΟΡΙΕΣ ΑΡΧΕΙΟΥ

Η αγγλική έκδοση αυτής της άμεσης επιδιόρθωσης έχει τα χαρακτηριστικά αρχείου (ή νεότερα χαρακτηριστικά αρχείου) που παρατίθενται στον παρακάτω πίνακα. Οι ημερομηνίες και οι ώρες για τα αρχεία αυτά αναφέρονται σε συντονισμένη παγκόσμια ώρα (UTC). Όταν προβάλλετε τις πληροφορίες του αρχείου, αυτές μετατρέπονται στην τοπική ώρα. Για να βρείτε τη διαφορά μεταξύ της ώρας UTC και της τοπικής ώρας, χρησιμοποιήστε τηνΖώνη ώραςκαρτέλα με τοΗμερομηνία και ώρατο στοιχείο του πίνακα ελέγχου.
Σύμπτυξη αυτού του πίνακαΑνάπτυξη αυτού του πίνακα
Όνομα αρχείουΈκδοση αρχείουΜέγεθος αρχείουΗμερομηνίαΏραΠλατφόρμα
Mscordacwks.dll2.0.50727.1823822,28008-Apr-200803: 36X86
Mscorlib.dll2.0.50727.18234,345,85608-Apr-200803: 36X86
Mscorwks.dll2.0.50727.18235,852,67208-Apr-200803: 36X86

Κατάσταση

Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα θέμα το οποίο παρουσιάζεται στα προϊόντα της που αναφέρονται στην ενότητα "Ισχύει για".

Περισσότερες πληροφορίες

Για περισσότερες πληροφορίες σχετικά με την ορολογία ενημερωμένων εκδόσεων λογισμικού, κάντε κλικ στον αριθμό του άρθρου παρακάτω για να προβάλετε το άρθρο της Γνωσιακής βάσης της Microsoft:
824684  (http://support.microsoft.com/kb/824684/LN/ ) Περιγραφή της βασικής ορολογίας που χρησιμοποιείται για την περιγραφή ενημερώσεων λογισμικού της Microsoft
Σημείωση Αυτό είναι ένα άρθρο «ΤΑΧΕΙΑΣ ΔΗΜΟΣΙΕΥΣΗΣ» που δημιουργήθηκε απευθείας από τον οργανισμό υποστήριξης της Microsoft. Οι πληροφορίες που περιλαμβάνονται σε αυτό το άρθρο, παρέχονται ως απόκριση σε θέματα που προκύπτουν. Ως αποτέλεσμα της ταχύτητας διάθεσής του, το υλικό ενδέχεται να έχει τυπογραφικά λάθη και να αναθεωρηθεί ανά πάσα στιγμή χωρίς ειδοποίηση. Ανατρέξτε στους Όρους χρήσης (http://go.microsoft.com/fwlink/?LinkId=151500) για άλλα ζητήματα.

Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft .NET Framework 2.0
Λέξεις-κλειδιά: 
kbexpertiseadvanced kbfix kbqfe kbmt KB950986 KbMtel
Μηχανικά μεταφρασμένοΜηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:950986  (http://support.microsoft.com/kb/950986/en-us/ )