Μήνυμα λάθους όταν ζητάτε μια ASP σελίδας που συνδέεται με μια βάση δεδομένων της Access στο IIS 7.0: "Σφάλμα βάσεων δεδομένων Microsoft Jet '80004005'"

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 926939 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Σημαντικό Αυτό το άρθρο περιέχει πληροφορίες που σας δείχνει τον τρόπο μείωσης των ρυθμίσεων ασφαλείας ή για να απενεργοποιήσετε τις δυνατότητες ασφαλείας σε έναν υπολογιστή. Μπορείτε να κάνετε αυτές τις αλλαγές για να αντιμετωπίσετε ένα συγκεκριμένο πρόβλημα. Πριν κάνετε αυτές τις αλλαγές, συνιστάται να εκτιμήσετε τους κινδύνους που σχετίζονται με την εφαρμογή αυτή εναλλακτικού τρόπου αντιμετώπισης στο συγκεκριμένο περιβάλλον. Εάν εφαρμόσετε αυτόν τον εναλλακτικό τρόπο αντιμετώπισης, λαμβάνουν τα κατάλληλα πρόσθετα μέτρα για την προστασία του υπολογιστή σας.
Ανάπτυξη όλων | Σύμπτυξη όλων

Συμπτώματα

Εξετάστε το ακόλουθο σενάριο. Σε ένα διακομιστή Web που εκτελεί τον Microsoft Internet Information Services (IIS) 7.0, μπορείτε να φιλοξενήσετε μια σελίδα ενεργού διακομιστή (ASP) που συνδέεται με μια βάση δεδομένων. Η υπηρεσία παροχής δεδομένων της σελίδας ASP είναι η υπηρεσία παροχής Microsoft.Jet.OLEDB.4.0. Το αρχείο προέλευσης δεδομένων της σελίδας ASP είναι ένα αρχείο βάσης δεδομένων (.mdb) της Microsoft Access. Σε αυτό το σενάριο, ενδέχεται να λάβετε το ακόλουθο μήνυμα λάθους όταν κάνετε αίτηση για τη σελίδα ASP:
Σφάλμα '80004005' βάσεων δεδομένων Microsoft Jet
Απροσδιόριστο σφάλμα
Σημείωση Θα εμφανιστεί ένα παρόμοιο μήνυμα λάθους όταν χρησιμοποιείτε και τα δύο από τα εξής:
  • Μια βάση δεδομένων Microsoft Access σε μορφή αρχείου Access 2007 (.accdb)
  • Η υπηρεσία παροχής δεδομένων Microsoft.ACE.OLEDB.12.0

Αιτία

Αυτό το ζήτημα ενδέχεται να προκύψει εάν το IIS 7.0 έχει ρυθμιστεί για να φορτώσετε το τρέχον προφίλ χρήστη για μια ταυτότητα χώρου συγκέντρωσης εφαρμογών. Αυτό μπορεί να προκαλέσει ζητήματα συμβατότητας με παλαιού τύπου εφαρμογές ASP και εφαρμογές που βασίζονται στο ADO, επειδή ο τρέχων χρήστης ενδέχεται να έχει επαρκή δικαιώματα εγγραφής σε προσωρινό κατάλογο.

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

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

Windows Server 2008 και Windows Vista με SP1 ή νεότερες εκδόσεις

Για να επιλύσετε αυτό το ζήτημα σε ένα διακομιστή IIS 7.0 Web που εκτελείται σε Windows Server 2008 ή Windows Vista με SP1 ή νεότερες εκδόσεις, ακολουθήστε τα εξής βήματα:
  1. Κάντε κλικ στο κουμπί Έναρξη, κάντε κλικ στο κουμπί Όλα τα προγράμματα, κάντε κλικ στο κουμπί Εξαρτήματα, κάντε δεξιό κλικ Γραμμή εντολών, και στη συνέχεια κάντε κλικ στο κουμπί Εκτέλεση ως διαχειριστής.
  2. Όταν σας ζητηθεί κωδικός πρόσβασης διαχειριστή ή επιβεβαίωση, πληκτρολογήστε τον κωδικό πρόσβασης ή κάντε κλικ στο κουμπί Συνεχίστε.
  3. Πληκτρολογήστε την ακόλουθη εντολή και πιέστε το πλήκτρο ENTER:
    iCacls %SystemDrive%\Windows\Temp /grant Users:(CI)(S,WD,AD,X)

    Σημείωση Αυτή η εντολή επιτρέπει σε κάθε χρήστη να δημιουργήσει αρχεία και καταλόγους σε προσωρινό κατάλογο.
  4. Πληκτρολογήστε την ακόλουθη εντολή και πιέστε το πλήκτρο ENTER:
    iCacls %SystemDrive%\Windows\Temp /grant "CREATOR OWNER":(OI)(CI)(IO)(F)

    Σημείωση Ο χρήστης που δημιουργεί ένα αρχείο ή έναν κατάλογο στον προσωρινό κατάλογο είναι ο CREATOR OWNER. Ο CREATOR OWNER καταχώρηση ελέγχου πρόσβασης παραχωρεί μια πλήρη έλεγχο χρήστη μέσω του αρχείου ή μέσω του καταλόγου. Άλλοι χρήστες δεν έχουν πρόσβαση αυτά τα αρχεία και καταλόγους επειδή δεν είναι ο CREATOR OWNER.
Τα Windows Vista RTM

Για να επιλύσετε αυτό το ζήτημα σε ένα διακομιστή IIS 7.0 Web που εκτελείται σε Windows Vista RTM, ακολουθήστε τα εξής βήματα:
Σημείωση Από προεπιλογή στα Windows Vista RTM, ταυτότητα διεργασίας είναι NetworkService και προσωρινό κατάλογο είναι % windir%\ServiceProfiles\NetworkService\AppData\Local\Temp.
  1. Κάντε κλικ στο κουμπί Έναρξη, κάντε κλικ στο κουμπί Όλα τα προγράμματα, κάντε κλικ στο κουμπί Εξαρτήματα, κάντε δεξιό κλικ Γραμμή εντολών, και στη συνέχεια κάντε κλικ στο κουμπί Εκτέλεση ως διαχειριστής.
  2. Όταν σας ζητηθεί κωδικός πρόσβασης διαχειριστή ή επιβεβαίωση, πληκτρολογήστε τον κωδικό πρόσβασης ή κάντε κλικ στο κουμπί Συνεχίστε.
  3. Πληκτρολογήστε την ακόλουθη εντολή και πιέστε το πλήκτρο ENTER:
    iCacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp /grant Users:(CI)(S,WD,AD,X)

    Σημείωση Αυτή η εντολή επιτρέπει σε κάθε χρήστη να δημιουργήσει αρχεία και καταλόγους σε προσωρινό κατάλογο.
  4. Πληκτρολογήστε την ακόλουθη εντολή και πιέστε το πλήκτρο ENTER:
    iCacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp /grant "CREATOR OWNER":(OI)(CI)(IO)(F)

    Σημείωση Ο χρήστης που δημιουργεί ένα αρχείο ή έναν κατάλογο στον προσωρινό κατάλογο είναι ο CREATOR OWNER. Η καταχώρηση ελέγχου πρόσβασης CREATOR OWNER παραχωρεί ένα χρήστη πλήρη έλεγχο του αρχείου ή καταλόγου. Άλλοι χρήστες δεν έχουν πρόσβαση αυτά τα αρχεία και καταλόγους επειδή δεν είναι ο CREATOR OWNER.

Εναλλακτικός τρόπος αντιμετώπισης

Για να επιλύσετε αυτό το ζήτημα, χρησιμοποιήστε τη μέθοδο που περιγράφεται στην ενότητα "Προτεινόμενη αντιμετώπιση". Ωστόσο, εάν δεν θέλετε να προσθέσετε καταχωρήσεις ελέγχου πρόσβασης σε προσωρινό κατάλογο για την ταυτότητα διεργασίας, μπορείτε να επιλύσετε το ζήτημα, απενεργοποιώντας το loadUserProfile η ιδιότητα για το χώρο συγκέντρωσης εφαρμογών. Όταν η ιδιότητα αυτή είναι απενεργοποιημένη, το IIS 7.0 δεν φορτώνει το τρέχον προφίλ χρήστη για το χώρο συγκέντρωσης εφαρμογών.

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

Για να απενεργοποιήσετε το loadUserProfile ιδιότητα για το χώρο συγκέντρωσης εφαρμογών, τροποποιήστε το αρχείο ApplicationHost.config. Το ακόλουθο παράδειγμα παρουσιάζει τον τρόπο για να γίνει αυτό.
<applicationPoolDefaults>
    <processModel identityType="NetworkService" loadUserProfile="false" />
</applicationPoolDefaults> 

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τα προσωρινά δικαιώματα καταλόγου όταν εκτελείτε ένα ερώτημα βάσης δεδομένων σε μια σελίδα ASP, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
315456Λαμβάνετε ένα μήνυμα λάθους αποτελεσμάτων βάσης δεδομένων κατά τη σύνδεση βάσης δεδομένων από μια σελίδα ASP στο FrontPage
Χρησιμοποιώντας την κλασική ASP με βάσεις δεδομένων Microsoft Access στο IIS 7.0 και IIS 7.5
http://Learn.IIS.NET/Page.aspx/563/using-Classic-ASP-with-Microsoft-Access-Databases-on-IIS-70-and-IIS-75/

Ιδιότητες

Αναγν. άρθρου: 926939 - Τελευταία αναθεώρηση: Κυριακή, 29 Μαΐου 2011 - Αναθεώρηση: 4.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Internet Information Services 7.0
Λέξεις-κλειδιά: 
kbtshoot kbprb kbmt KB926939 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:926939

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com