Wednesday, May 11, 2011

Windbg - Dùng alias cho các biến tạm

Như chúng ta biết thì Windbg có 20 thanh thi để dùng làm các biến tạm (có tên từ $t0 - $t19). Để viết script, ta dùng các thanh ghi này và thường thì rất khó đọc và khó nhớ thay vì có thể đặt tên thoải mái như C#.

Có một cách để làm giảm sự khó chịu này bằng cách dùng Alias. Ví dụ, nếu tôi không muốn dùng tên $t0 mà là một tên khác, ví dụ như biến i chẳng hạn, tôi làm cách sau:

0:014> aS i "@$t0"

Lệnh trên sẽ tạo một alias i đến thanh ghi $t0, từ đây, ta có thể dùng ${i} để thay cho @$t0.

Ví dụ:
0:014> r ${i}
$t0=00000005

Ta thấy biến i lúc này có giá trị là 5, cũng là giá trị của thanh ghi $t0

Để remove alias này, ta dùng lệnh:
0:014> ad ${/v:i}

Kiểm tra thử xem alias này còn tác dụng không:
0:014> r ${i}
^ Bad register error in 'r ${i}'

Voila, ta đã xóa thành công alias "i".

No comments: