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

PRB: CS0013 ή σφάλματα μεταγλώττισης CS0016 εφαρμογές Web του ASP.NET

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

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

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

Συμπτώματα

Κατά την προβολή μιας εφαρμογής ASP.NET της Microsoft σε ένα πρόγραμμα περιήγησης Web, ενδέχεται να λάβετε τα ακόλουθα μηνύματα λάθους:

Το Microsoft .NET Framework έκδοση 1.1, το μήνυμα λάθους είναι τα εξής:
CS0016: Δεν μπορεί να γράψει για να εξαγάγετε το αρχείο 'c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary Files\application1\c11b43f6\cf3ec03\rizcntet.dll ASP.NET'. Το όνομα καταλόγου δεν είναι έγκυρο.
Για το .NET Framework 1.0, το μήνυμα λάθους είναι τα εξής:
CS0013: Μη αναμενόμενο σφάλμα εγγραφής μετα-δεδομένων στο αρχείο 'Files\application2\3fc72f26\eb731247\ev2bslce.dll ASP.NET C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\Temporary'. Το όνομα καταλόγου δεν είναι έγκυρο.

Αιτία

από το σύστημα. (A portion of the folder path '[2]' exceeds the length allowed by the system.)TempANDTMPμεταβλητές οδηγεί σε ένα φάκελο που δεν υπάρχει. Το πρόγραμμα μεταγλώττισης δημιουργεί προσωρινά αρχεία στο φάκελο όπου τοTempκαι τοTMPοδηγεί σε μεταβλητές, πριν τα αρχεία αντιγράφονται στο φάκελο προσωρινών αρχείων του ASP.NET. Ωστόσο, στο φάκελο όπου κάντε τις μεταβλητές συστήματος διαγράφεται, όταν κάνετε επανεκκίνηση του υπολογιστή. Επομένως, το μεταγλωττιστή δεν είναι δυνατό να δημιουργήσει προσωρινά αρχεία.

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

  1. Δημιουργήστε έναν προσωρινό φάκελο στην περιοχή%SYSTEMROOT%, και στη συνέχεια ονομάστε τοTemp.
  2. Παραχωρήστε πλήρη δικαιώματα για το φάκελο Temp για τοASPNETλογαριασμό χρήστη στο .NET Framework 1.0 ή για τοΔΊΚΤΥΟ Τ/Υλογαριασμός χρήστη στο .NET Framework 1.1.
  3. Κάντε δεξιό κλικ στο στοιχείοΟ Υπολογιστής μου (My Computer), και στη συνέχεια κάντε κλικ στο κουμπίΙδιότητες (Properties).
  4. Στο διακομιστήΓια προχωρημένους (Advanced)καρτέλα, κάντε κλικ στο κουμπίΜεταβλητές Περιβάλλοντος.
  5. Επιλέξτε τοTempμεταβλητή στην περιοχήΜεταβλητές συστήματος, και στη συνέχεια κάντε κλικ στο κουμπίΕπεξεργαστείτε τη διαδρομή.
  6. TYPE%SYSTEMROOT%\TempΣτοΤιμή μεταβλητήςπλαίσιο και στη συνέχεια κάντε κλικOk.
  7. Επαναλάβετε τα βήματα 5 και 6 για να επεξεργαστείτε τοTMPμεταβλητή. Κάντε κλικOkδύο φορές.
  8. Κάντε κλικStart, και στη συνέχεια κάντε κλικ στο κουμπίΕκτέλεση.
  9. Για να επαναφέρετε τις υπηρεσίες πληροφοριών Internet (IIS), πληκτρολογήστε:iisresetστη γραμμή εντολών.

    ΣΗΜΕΙΩΣΗΕάν εξακολουθεί να εμφανίζεται το μήνυμα λάθους που αναφέρεται στην ενότητα "Συμπτώματα" αυτού του άρθρου, κάντε επανεκκίνηση του υπολογιστή.

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

Βήματα για την αναπαραγωγή της συμπεριφοράς

  1. Ξεκινήστε το Microsoft Visual Studio .NET.
  2. Δημιουργήστε ένα νέο έργο της εφαρμογής ASP.NET Web χρησιμοποιώντας το Microsoft Visual C# .NET ή Microsoft Visual Basic .NET και κατόπιν ονομάστε το έργοCompileTest.
  3. Στο διακομιστήΔημιουργίαμενού, κάντε κλικ στο κουμπίΔημιουργία λύσεων.
  4. Κάντε δεξιό κλικ στο στοιχείοΟ Υπολογιστής μου (My Computer), και στη συνέχεια κάντε κλικ στο κουμπίΙδιότητες (Properties).
  5. Στο διακομιστήΓια προχωρημένους (Advanced)καρτέλα, κάντε κλικ στο κουμπίΜεταβλητές Περιβάλλοντος.
  6. Επιλέξτε τοTempμεταβλητή στην περιοχήΜεταβλητές συστήματος, και στη συνέχεια κάντε κλικ στο κουμπίΕπεξεργαστείτε τη διαδρομή.
  7. TYPE%SYSTEMROOT%\TEMP1ΣτοΤιμή μεταβλητήςτο πλαίσιο για να υποδεικνύει το φάκελο TEMP1 ανύπαρκτους και, στη συνέχεια, κάντε κλικ στο κουμπίOk.
  8. Επαναλάβετε τα βήματα 6 και 7, για να επεξεργαστείτε τοTMPμεταβλητή ώστε να παραπέμπει στο φάκελο TEMP1 δεν υπάρχει.
  9. Κάντε κλικOkδύο φορές.
  10. Για την ειδοποίηση ένα από τα μηνύματα λάθους που αναφέρονται στην ενότητα "Συμπτώματα" αυτού του άρθρου, επισκεφθείτε την ακόλουθη διεύθυνση URL:http://localhost/CompileTest/WebForm1.aspx

Αναφορές

Για περισσότερες πληροφορίες σχετικά με το πώς να εκχωρήσετε δικαιώματα σε ένα φάκελο, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft Developer Network (MSDN) στο Web:
Διασφάλιση της εφαρμογής ASP.NET και υπηρεσίες Web
http://msdn2.Microsoft.com/en-us/library/aa302435.aspx (http://msdn2.microsoft.com/en-us/library/aa302435.aspx)

Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
Λέξεις-κλειδιά: 
kberrmsg kbcompiler kbwebforms kbdeployment kbprb kbmt KB825791 KbMtel
Μηχανικά μεταφρασμένοΜηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:825791  (http://support.microsoft.com/kb/825791/en-us/ )