8/16/2019 4. Debugging
1/19
LẬP TRÌNH VISUAL BASIC
TÌM VÀ SỬA LỖI MÃ VISUAL BASICTRONG MS VISUAL STUDIO 6.0
Quách Đình Hoàng
Khoa Công nghệ Thông tinĐại học Sư phạm Kỹ thuật TP.HCM
8/16/2019 4. Debugging
2/19
LT
VB
LT
VB
NỘI DUNG
Các loại lỗi Các lỗi thông dụng trong Visual Basic Thiết lập BreakPoint
Debugging Toolbar và Debugging Menu Thực thi từng dòng lệnh Các màn hình sửa lỗi Watch Window
Immediate Window
Locals Window
Call Stack
LẬP TRÌNH VISUAL BASIC
2
8/16/2019 4. Debugging
3/19
LT
VB
LT
VB
CÁC LOẠI LỖI
LẬP TRÌNH VISUAL BASIC
3
Lỗi có thể được chia làm 3 loại chính Lỗi cú pháp/biên dịch (syntax/compile error) Từ khóa sai hay cấu trúc điều khiển sai cú pháp
Dòng bị lỗi hiển thị màu đỏ Lỗi run-time (run-time error) Làm chương trình kết thúc đột ngột
Ví dụ: gán 2 biến có kiểu dữ liệu không khớp nhau
Lỗi logic (logic error) Làm chương trình xuất ra kết quả không như dự định
Là lỗi khó tìm và khó sửa nhất
8/16/2019 4. Debugging
4/19
LT
VB
LT
VB
LỖI CÚ PHÁP
LẬP TRÌNH VISUAL BASIC
4
8/16/2019 4. Debugging
5/19
LT
VB
LT
VB
LỖI RUN-TIME
LẬP TRÌNH VISUAL BASIC
5
8/16/2019 4. Debugging
6/19
LT
VB
LT
VB
LỖI LOGIC
LẬP TRÌNH VISUAL BASIC
6
8/16/2019 4. Debugging
7/19
LT
VB
LT
VB
CÁC LỖI THÔNG DỤNG
LẬP TRÌNH VISUAL BASIC
7 Mã Thông báo Lý do
5 Procedure call or argument is not
valid, hay
Invalid procedure call
Phần nào đó trong lời gọi thủ tụcbị lỗi. Kiểm tra lại các đối số của
thủ tục.
6 Overflow Biến nhận giá trị lớn hơn giá trị
giới hạn của kiểu dữ liệu mà nó
được gán.
9 Subscript out of range Chỉ số của mảng không hợp lệ vì
nó vượt ngoài miền chỉ số cho
phép của mảng.
11 Division by zero Một biến hoặc biểu thức được sửdụng như một số bị chia có giá trị
0.
13 Type mismatch Một biến đang được gán sang
một kiểu giá trị khác theo cách
không hợp lệ.
8/16/2019 4. Debugging
8/19
LT
VB
LT
VB
CÁC LỖI THÔNG DỤNG
LẬP TRÌNH VISUAL BASIC
8 Mã Thông báo Lý do
35 Sub or Function not defined Sub hoặc Function đang sử dụngchưa được định nghĩa. Xem lại
tên Sub (Function) và danh sách
đối số (nếu có).
422 Property not found Thuộc tính của đối tượng không
được định nghĩa. Kiểm tra lại tên
của đối tượng.
423 Property or method not found Thuộc tính hay phương thức của
đối tượng không được định
nghĩa. Kiểm tra lại tên của đốitượng.
424 Object required Tham chiếu đến thuộc tính hay
phương thức của một đối tượng
chưa được khai báo. Kiểm tra lại
tên của đối tượng.
8/16/2019 4. Debugging
9/19
LT
VB
LT
VB
THIẾT LẬP BREAK -POINT
LẬP TRÌNH VISUAL BASIC
9
Chọn dòng lệnh cầnthiết lập BreakPoint và Nhấn F9 hoặc
Click biểu tượng Click vào lề trái của
màn hình soạn thảo mã
Chương trình khi thực
thi sẽ dừng tại dòng cóBreakPoint mà nó gặpđầu tiên.
8/16/2019 4. Debugging
10/19
LT
VB
LT
VB
DEBUGGING TOOLBAR
LẬP TRÌNH VISUAL BASIC
10
Nhấp vào View > Toolbars > Debug
“Action” Buttons
RunPause
Stop
“Flow” Buttons
Breakpoint toggleStep Into
Step Over
Step Out
“Window” Buttons
Locals WindowImmediate Window
Watch Window
Quick Watch
Call Stack Window
8/16/2019 4. Debugging
11/19
LT
VB
LT
VB
DEBUGGING MENU
LẬP TRÌNH VISUAL BASIC
11
8/16/2019 4. Debugging
12/19
LT
VB
LT
VB
THỰC THI TỪNG DÒNG LỆNH
LẬP TRÌNH VISUAL BASIC
12
Step Into [F8]
Thực thi dòng lệnh hiện tại và đi đến dòng kế tiếp
Step Over [Shift F8]
Sử dụng cho dòng lệnh gọi thủ tục (hàm) để thựchiện qua tất cả các lệnh trong chúng một lần
Step Out [Ctrl Shift F8]
Thực hiện thủ tục (hàm) hiện tại và đi đến dònglệnh sau lời gọi thủ tục (hàm) này.
8/16/2019 4. Debugging
13/19
LT
VB
LT
VB
WATCH WINDOW
LẬP TRÌNH VISUAL BASIC
13
Vào Debug > Add Watch: Xem giá trị biến,biểu thức
8/16/2019 4. Debugging
14/19
LT
VB
LT
VB
QUICH WATCH
LẬP TRÌNH VISUAL BASIC
14
Chọn (bôi đen) biến, biểu thức cần xem giá trịvà nhấn Debug > Quick Watch
8/16/2019 4. Debugging
15/19
LT
VB
LT
VB
IMMEDIATE WINDOW
LẬP TRÌNH VISUAL BASIC
15
Dùng Immediate Window, ta có thể xem giá trịcủa một biến hoặc biểu thức Cú pháp: ?
Ví dụ: ? a, ? a + b
8/16/2019 4. Debugging
16/19
LT
VB
LT
VB
IMMEDIATE WINDOW
LẬP TRÌNH VISUAL BASIC
16
Dùng Immediate Window, ta cũng có thể gánlại giá trị cho một biến Cú pháp: =
Ví dụ: a = 4
8/16/2019 4. Debugging
17/19
LT
VB
LT
VB
LOCALS WINDOW
LẬP TRÌNH VISUAL BASIC
17
Dùng Locals Window để xem tất cả các biến
8/16/2019 4. Debugging
18/19
LT
VB
LT
VB
CALL STACK
LẬP TRÌNH VISUAL BASIC
18
Call Stack
Window
cho phép
ta lần theochuỗi lờigọi thủ tục(hàm) dễdàng
8/16/2019 4. Debugging
19/19
LT
VB
LT
VB
TỔNG KẾT
LẬP TRÌNH VISUAL BASIC
19
Các loại lỗi Các lỗi thông dụng trong Visual Basic Thiết lập BreakPoint
Debugging Toolbar và Debugging Menu Thực thi từng dòng lệnh Các màn hình sửa lỗi Watch Window
Immediate Window
Locals Window
Call Stack