Ενημερωμένες εκδόσεις για τον εντοπισμό σφαλμάτων του Visual Studio 2008 SP1 και σημεία διακοπής

ΕΙΣΑΓΩΓΗ

Η Microsoft έχει κυκλοφορήσει ενημερωμένες εκδόσεις για το Microsoft Visual Studio 2008 SP1 στοιχεία προγράμματος εντοπισμού σφαλμάτων. Αυτές οι ενημερωμένες εκδόσεις διευθύνσεων κυρίως ζητήματα που παρουσιάζονται με stepping και χτυπώντας σημεία διακοπής.

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

Εγκατάσταση

Αυτή η ενημερωμένη έκδοση είναι για όλες τις εκδόσεις του Visual Studio 2008 SP1 σε υπολογιστές που x86 και x64. Ωστόσο, εάν χρησιμοποιείτε το Visual Studio 2008 Standard Edition σε ένα λειτουργικό σύστημα 64-bit, πρέπει να εγκαταστήσετε το 64-bit Visual Studio 2008 SP1 απομακρυσμένο πρόγραμμα εντοπισμού σφαλμάτων, πριν να εφαρμόσετε αυτήν την ενημερωμένη έκδοση. Για πληροφορίες σχετικά με τον τρόπο απόκτησης του 64-bit Visual Studio 2008 SP1 απομακρυσμένο πρόγραμμα εντοπισμού σφαλμάτων, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:

Ενημερώσεις κώδικα εντοπισμού σφαλμάτων πολλαπλών διαδικασιών και πολλαπλών νημάτων

Σημείωση Τις παρακάτω περιγραφές που αναφέρονται σε ένα σύνολο υποθετικών διεργασίες που είναι που διορθώνεται με μια μεμονωμένη παρουσία του Visual Studio. Όταν αναφέρονται συναρτήσεις, υποτίθεται ότι οι συναρτήσεις είναι επαναλαμβανόμενη ή ότι οι συναρτήσεις περιέχουν βρόχους. Αυτά τα σενάρια δεν προορίζονται να αναπαραγάγετε το ζήτημα. Αντίθετα, παρέχονται για να σας εξηγήσουν το πρόβλημα.

Σημεία διακοπής σε parallelized βρόχους παραβλέπονται τελικά μετά από πολλές επισκέψεις

Σημεία διακοπής τοποθετήσετε βρόχους ή περιοδικότητας συναρτήσεις δεν επισκέψεων σε όλες τις διαδικασίες σε κάθε επανάληψη. Συχνά, ορισμένες διαδικασίες μπορεί να διέρχεται από πολλές επαναλήψεις του ένα βρόχο, αγνοώντας το σημείο διακοπής, πριν από μια διαδικασία έχει διακοπεί. Εξετάστε το ακόλουθο σενάριο:
  1. Μπορείτε να εκκινήσετε τον εντοπισμό σφαλμάτων σε πολλαπλές διεργασίες. Μία από τις διεργασίες που εκτελούν εντοπισμό σφαλμάτων είναι με ερμητική επανάληψη ή είναι συνάρτηση περιοδικότητας.
  2. Διακοπή κύριο νήμα της τρέχουσας διεργασίας (τελευταία διαδικασία για να χτυπήσετε το σημείο διακοπής) και, στη συνέχεια, να συνεχίσετε για εντοπισμό σφαλμάτων. Επαναλάβετε αυτήν την ενέργεια για κάθε διεργασία.
  3. Επανεκκινήστε τα νήματα για κάθε διαδικασία.
Σημειώστε ότι μετά από αρκετές επαναλήψεις σημεία διακοπής είναι πλέον επισκέψεων. Αυτή η συμπεριφορά είναι αναμενόμενη.

Διακοπή και έναρξη νήματα προκαλεί σημεία διακοπής για να λείπουν

Χτυπηθούν σημεία διακοπής, αλλά δεν είναι ορατά κατά τον εντοπισμό σφαλμάτων σε πολλές διεργασίες του προγράμματος εντοπισμού σφαλμάτων Visual Studio. Εξετάστε το ακόλουθο σενάριο κατά το οποίο εκτελείτε εντοπισμού σφαλμάτων δύο διαδικασίες, η διαδικασία Α και β. η διαδικασία
  1. Καθορίστε ένα σημείο διακοπής σε δύο διεργασίες και εκκινήσετε τον εντοπισμό σφαλμάτων. Και τα δύο σημεία διακοπής θα επιτευχθεί.
  2. Διακοπή κύριο νήμα της διεργασίας A, επιλέξτε διαδικασία B και, στη συνέχεια, πιέστε το πλήκτρο F11 για να Βηματική εκτέλεση της εντολής μία φορά.
  3. Ξεκινήστε πάλι το κύριο νήμα της διεργασίας A και κατόπιν τερματίστε το κύριο νήμα της διαδικασίας β. Στη συνέχεια, πατήστε F11 για να Βηματική εκτέλεση της εντολής.

    Παρατηρήστε ότι και οι δύο διαδικασίες είναι στην ίδια γραμμή.

  4. Διακοπή κύριο νήμα της διαδικασίας α. Σε αυτό το σημείο, δεν υπάρχουν νήματα θα πρέπει να διακοπεί.
  5. Πατήστε F5 για να συνεχίσετε.
Θα πρέπει να ολοκληρωθεί η διαδικασία και Visual Studio, θα επανέλθει σε κατάσταση σχεδίασης. Ωστόσο, αυτό δεν συμβαίνει. Τις διαδικασίες αλλαγών αργότερα στον κώδικα.

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

Visual Studio μπορεί να διακοπεί όταν εφαρμόζετε εντοπισμό σφαλμάτων σε πολλαπλές διεργασίες ταυτόχρονα

Visual Studio Debugger ενδέχεται να αντιμετωπίσετε μια αδιέξοδη κατάσταση, κατά την εκκίνηση και στη συνέχεια να διακόψετε ένα νήμα και στη συνέχεια εκτελέστε για το επόμενο σημείο διακοπής, εάν πολλές διεργασίες είναι που διορθώνεται. Εξετάστε το ακόλουθο σενάριο:
  1. Μπορείτε να ορίσετε σημεία διακοπής σε τρεις αυθαίρετο δηλώσεις μεταβλητής.
  2. Μπορείτε να εκκινήσετε τον εντοπισμό σφαλμάτων διαδικασιών 16.
  3. Διάσπαση μία από τις διεργασίες και κατόπιν τερματίστε το κύριο νήμα.
  4. Πιέστε το πλήκτρο F5.
  5. Επαναλάβετε τα βήματα 3 και 4 μέχρι όλες τις διεργασίες να χτυπήσετε το σημείο διακοπής.
  6. Ξεκινήστε τον κύριο νήματα όλες τις διεργασίες.
  7. Για κάθε διαδικασία, μπορείτε να διαγράψετε το πρώτο σημείο διακοπής και, στη συνέχεια, πιέστε το πλήκτρο F5.
  8. Για κάθε διεργασία, επαναλάβετε τα βήματα 3 και 4. Όλες οι διαδικασίες θα πρέπει να είναι στο δεύτερο σημείο διακοπής.
  9. Πιέστε το πλήκτρο F5.
  10. Για κάθε διεργασία, επαναλάβετε τα βήματα 3 και 4.
Όλες οι διαδικασίες θα πρέπει να φτάσουν το τρίτο σημείο διακοπής, αλλά τουλάχιστον μία διαδικασία ενδέχεται να έχει κολλήσει σε κατάσταση λειτουργίας.

Stepping πάνω από ένα σημείο διακοπής σε απενεργοποιημένη κατά τον εντοπισμό σφαλμάτων σε μια εγγενή εφαρμογή μετατρέπεται σε "go"

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

Stepping κατά τον εντοπισμό σφαλμάτων σε μια διαχειριζόμενη εφαρμογή πολλαπλών νημάτων τυχαία να μετατρέψετε σε "go"

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

Μήνυμα επιδιορθώνει το πρόγραμμα εντοπισμού σφαλμάτων διέρχεται διασύνδεσης (MPI) για Visual Studio εκδόσεις παρέχουν υποστήριξη προσθήκης MPI

Visual Studio διακόπτεται όταν χρησιμοποιείτε την εντολή "Εκτέλεση βηματικά" για να ξεκινήσετε ένα πρόγραμμα MPI

Όταν χρησιμοποιείτε την εντολή " βήμα σε " ή πιέστε το πλήκτρο F11, για τον εντοπισμό σφαλμάτων σε πολλαπλές παρουσίες μιας διαδικασίας MPI, Visual Studio διακόπτεται. Ή, μπορείτε να λάβετε το ακόλουθο μήνυμα λάθους:

Η Microsoft έχει αντιμετωπίσει το Visual Studio και εσωτερικό σφάλμα

Εκτέλεση της εντολής "Εκτέλεση με παράκαμψη" ενώ εκτελούν εντοπισμό σφαλμάτων σε πολλαπλές διεργασίες προκαλεί αδιέξοδο

Εάν εκτελέσετε την εντολή " Εκτέλεση με παράκαμψη " ενώ εκτελούν εντοπισμό σφαλμάτων σε πολλαπλές διεργασίες, Visual Studio διακόπτεται. Εξετάστε το ακόλουθο σενάριο:
  1. Μπορείτε να ανοίξετε μια εφαρμογή πολλαπλών νημάτων.
  2. Μπορείτε να ορίσετε ένα σημείο διακοπής σε μια επαναλαμβανόμενη κλήση συνάρτησης.
  3. Εφαρμογή εντοπισμού σφαλμάτων σε δύο διαδικασίες.
  4. Μπορείτε να εκκινήσετε τον εντοπισμό σφαλμάτων. Το σημείο διακοπής της αντίστοιχης στην πρώτη διαδικασία.
  5. Πιέστε το πλήκτρο F5. Το σημείο διακοπής της αντίστοιχης σχετικά με τη δεύτερη διαδικασία.
  6. Διακοπή κύριο νήμα της πρώτης διαδικασίας.
  7. Μπορείτε να εκτελέσετε την εντολή Εκτέλεση με παράκαμψη σχετικά με τη δεύτερη διαδικασία και, στη συνέχεια, κάνετε κλικ στο κουμπί Διακοπή.

    Δεν είναι δυνατή η ολοκλήρωση της λειτουργίας, επειδή περιμένει την πρώτη διαδικασία. Κάντε κλικ στο κουμπί Παύση για να εισαγάγετε ξανά κατάσταση διακοπής. Το πρόγραμμα εντοπισμού σφαλμάτων χρησιμοποιεί ένα πράσινο βέλος για να υποδείξει την επόμενη διαδικασία δήλωση που θα εκτελεστεί όταν επιστρέφει από τη συνάρτηση.
  8. Μπορείτε να προσθέσετε ένα σημείο διακοπής κατά τη δεύτερη διαδικασία.
  9. Μπορείτε να διακόψετε την πρώτη διαδικασία και, στη συνέχεια, πιέστε το πλήκτρο F5.
Σε αυτό το σημείο, μπορείτε να περιμένετε το πρόγραμμα εντοπισμού σφαλμάτων για να φτάσει το σημείο διακοπής σε κάθε διαδικασία. Ωστόσο, και οι δύο διαδικασίες είναι αδιέξοδο μέσα στη συνάρτηση και το σημείο διακοπής που προστέθηκε τελευταία δεν είναι ποτέ επισκέψεων. Επιπλέον, το πρόγραμμα εντοπισμού σφαλμάτων δεν είναι δυνατό να εκτελεστεί στο τέλος της εφαρμογής.

Σημείο διακοπής της ενημέρωσης κώδικα περιβάλλοντος εργασίας Χρήστη

Απενεργοποιημένη σημεία διακοπής δεν είναι ορατά, μετά την εγκατάσταση του Visual Studio 2008 Service Pack 1

Εάν απενεργοποιήσετε ένα σημείο διακοπής, το σημείο διακοπής είναι πλέον επισκέψεων. Επίσης, το σημείο διακοπής είναι κρυφή από το πρόγραμμα επεξεργασίας αριστερότερο κανάλι. Το σημείο διακοπής απενεργοποιημένη εξακολουθεί να υπάρχει. Εμφανίζεται στο παράθυρο του εργαλείου σημεία διακοπής.

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

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

Για να κάνετε λήψη αυτής της επείγουσας επιδιόρθωσης από τη συλλογή κωδίκων MSDN, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:


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


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

Προϋποθέσεις


Πρέπει να έχετε Microsoft Visual Studio 2008 SP1 για να εφαρμόσετε αυτήν την επείγουσα επιδιόρθωση.

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


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

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


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

Πληροφορίες αρχείων


Η αγγλική έκδοση αυτής της άμεσης επιδιόρθωσης έχει τα χαρακτηριστικά αρχείου (ή νεότερα χαρακτηριστικά αρχείου) που παρατίθενται στον παρακάτω πίνακα. Οι ημερομηνίες και οι ώρες για τα αρχεία αυτά αναφέρονται σε Συντονισμένη παγκόσμια ώρα (UTC). Όταν προβάλλετε τις πληροφορίες του αρχείου, μετατρέπεται σε τοπική ώρα. Για να βρείτε τη διαφορά μεταξύ της ώρας UTC και της τοπικής ώρας, χρησιμοποιήστε την
Ζώνη ώρας
στο το
Ημερομηνία και ώρα
το στοιχείο του πίνακα ελέγχου.
Όνομα αρχείουΈκδοση αρχείουΜέγεθος αρχείουΗμ/νίαΏραΠλατφόρμα
AvVsPkDH.dll9.0.30729.177325848-Nov-082:19x86
AvVsPkDH.dll9.0.30729.177382168-Nov-082:19x64
AvVsPkDH.dll9.0.30729.177750808-Nov-082:19IA-64
AvVsPkDH.dll9.0.30729.177750808-Nov-082:19x86
AvVsPkDH.dll9.0.30729.177382168-Nov-082:19x86
AvVsPkDH.dll9.0.30729.177325848-Nov-082:19x86
cpde.dll9.0.30729.1776526088-Nov-082:19x86
mcee.dll9.0.30729.17711809928-Nov-082:19x86
mcee.dll9.0.30729.1776567048-Nov-082:19x86
mcee.dll9.0.30729.1773648648-Nov-082:19x86
mcee.dll9.0.30729.1773648648-Nov-082:19x86
mcee.dll9.0.30729.1776567048-Nov-082:19x64
mcee.dll9.0.30729.17711809928-Nov-082:19IA-64
mpishim.exe9.0.30729.177238808-Nov-082:19x86
mpishim.exe9.0.30729.177238808-Nov-082:19x86
mpishim.exe9.0.30729.177238808-Nov-082:19x86
mpishim.exe9.0.30729.177238808-Nov-082:19x86
mpishim.exe9.0.30729.177290008-Nov-082:19x64
mpishim.exe9.0.30729.177546008-Nov-082:19IA-64
msvb7.dll9.0.30729.17740871048-Nov-082:19x86
msvb7.dll9.0.30729.17757331848-Nov-082:19x86
msvb7.dll9.0.30729.17727425928-Nov-082:19x86
msvb7.dll9.0.30729.17740871048-Nov-082:19x86
msvb7.dll9.0.30729.17740871048-Nov-082:19x86
msvb7.dll9.0.30729.17727425928-Nov-082:19x64
msvb7.dll9.0.30729.17757331848-Nov-082:19IA-64
msvsmon.exe9.0.30729.17799925208-Nov-082:19x86
msvsmon.exe9.0.30729.17747614168-Nov-082:19x86
msvsmon.exe9.0.30729.17732167128-Nov-082:19x86
msvsmon.exe9.0.30729.17732167128-Nov-082:19x86
msvsmon.exe9.0.30729.17747614168-Nov-082:19x64
msvsmon.exe9.0.30729.17799925208-Nov-082:19IA-64
NatDbgDE.dll9.0.30729.17713479128-Nov-082:19x86
NatDbgDE.dll9.0.30729.1773141848-Nov-082:19x86
vsdebug.dll9.0.30729.17715849688-Nov-082:19x86
msvb7.dll9.0.30729.17740871048-Nov-082:19x86

Κατάσταση

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

Αναγνωριστικό άρθρου: 957912 - Τελευταία αναθεώρηση: 14 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια