Wyszukiwanie błędów: tryb przerwania

Transkrypt

Wyszukiwanie błędów: tryb przerwania
(C)2005 RoG@j
Wyszukiwanie błędów:
tryb przerwania
Błędy wykonania
Tryb przerwania
Praca w trybie przerwania
Punkty przerwania
2005-03-30
Błędy wykonania (1)
!
!
!
!
!
!
!
Błędy wykonania (2)
!
!
!
!
!
!
16
17
18
20
28
Wyrażenie zbyt skomplikowane
Nie można wykonać żądanej operacji
akcja przerwana przez użytkownika
Użycie słowa resume bez obsługi błędów
Przekroczenie dopuszczalnego rozmiaru
stosu
35 Wywołana procedura, funkcja lub
właściwość nie istnieje
Błąd wykonania (4)
!
!
!
!
!
!
!
!
VBA 22
59
61
62
63
67
68
70
71
Niewłaściwa długość rekordu
Przepełnienie dysku
Poza końcem pliku
Nieprawidłowy numer rekordu
Zbyt wiele plików
Urządzenie jest niedostępne
Brak uprawnień do dokonania operacji
Dysk nie gotowy
3
5
6
7
Użyto Return bez GoSub
Niewłaściwe wywołanie procedury
Przepełnienie
Wyjście poza dopuszczalny obszar
pamięci
10 Tablica jest zablokowana
11 Dzielenie przez zero
13 Niezgodność typów
Błędy wykonania (3)
!
!
!
!
!
!
!
!
48
49
52
53
54
55
57
58
Błąd ładowania kodu źródłowego
Błędny kod źródłowy
Błędny numer lub nazwa pliku
Plik nie został znaleziony
Niewłaściwy tryb pliku
Plik jest już otwarty
Błąd operacji wejścia/wyjścia
Plik o tej nazwie już istnieje
Błędy wykonania (5)
!
!
!
!
!
74
75
76
92
…
Nie można zmienić nazwy na dysku
Błędna ścieżka dostępu
Ścieżka nie została odnaleziona
Nie zainicjowana pętla
1
(C)2005 RoG@j
Tryb przerwania
!
Edytor VBA zezwala na pracę z kodem w
trybie przerwania
!
!
!
Gdy kod programu nie jest zbyt długi to dobrą
metoda odpluskwiania jest wykonywanie
kodu linia po linii
!
!
!
!
!
!
Polecenie Debug " Step Into lub naciśnięcie
klawisza <F8> - kursor musi być wewnątrz
analizowanej procedury
Przez umieszczenie wewnątrz programu instrukcji
Stop powodującej zatrzymanie pracy
Przez umieszczenie w kodzie programu punktu
przerwania
Gdy program długo coś wykonuje za pomocą
<Ctrl-Break>
Procedury zewnętrzne
!
W przypadku wywołania procedury
zewnętrznej mogą one zostać potraktowane
w różny sposób
!
!
!
Step Into powoduje wykonywanie wiersz po
wierszu wywoływanych poleceń zewnętrznych
Step Over powoduje, że procedura zewnętrzna
wykonywana jest w całości
Step Out powoduje powrót z wywołanej
procedury bez konieczności wykonania jej w
całości
Punkty przerwania (2)
!
Ustawiamy kursor w wierszu, gdzie chcemy
wstawić punkt przerwania
Wydajemy polecenie Debug " Toggle
Breakpoint lub naciskamy <F9>
!
!
Tryb przerwania uruchamiamy przez
!
Jeśli wstępna analiza kodu programu
pozwala na przybliżone zidentyfikowanie
miejsca, gdzie występuje błąd to w tej
„podejrzanej” okolicy można wstawić punkt
przerwania (breakpoint)
!
VBA 22
!
Umieszczamy kursor wewnątrz analizowanej
procedury i naciskamy <F8>
Każde kolejne naciśnięcie <F8> spowoduje
wykonanie kolejnego wiersza kodu
Gdy pojawi się okno dialogowe należy wykonać
odpowiednią operację
Punkty przerwania (1)
!
Wchodzenie do trybu
przerwania
Automatyczne wykonywanie całości kodu jest
przerwane
Możliwe jest wykonywanie pojedynczych instrukcji
lub wybranych bloków
Wykonywanie kolejnych linii lub bloków następuje
na polecenie programisty
Wykonywanie linia po linii
!
2005-03-30
!
!
Polecenie Run (<F5>) spowoduje, że
program zostanie wykonany w „normalny”
sposób aż do instrukcji poprzedzającej punkt
przerwania
Usunięcie punktu przerwania - <F9>
Usunięcie wszystkich punktów przerwania <Ctrl-Shift-F9>
Wstawianie punktów umożliwia też menu
kontekstowe – prawy klawisz myszy
2