Chương trình Tô mỳ Minh duy

Giải quyết hiệu quả vấn đề trong những mối quan hệ

Giải thích Mã nguồn VBScript duyệt thư mục

Giải thích Mã nguồn VBScript Duyệt Thư mục

Tony Minh Duy


Xem tại nguồn dễ đọc hơn


Muốn học cách lập trình? Xem hoclaptrinh.danhthieptoi.com. Trên trang này bạn sẽ thấy có liên kết dẫn đến xem mã nguồn VBScript dùng để liệt kê nội dung một thư mục. Mục đích bài viết này là để giải thích nội dung tệp mã nguồn đó mang tên là lietkethumuc.asp, trong đây gọi tắt là LKTM.

Trước khi đọc tiếp tục, hãy nhấp chuột vào ngay đây cho phần mềm lietkethumuc.asp chạy trên máy chủ hệ web ta và xem kết quả. Hãy thảo luận về kết quả phần mềm LKTM trước khi bàn luận về nội dung mã nguồn.

Đầu và cuối trang kết quả LKTM cho thấy LKTM chạy trong vòng một hai giây mà thôi. LKTM lấy thư mục lietKeThuMuc làm ví dụ. Nó chứa một thư mục tên là cha101. Thư mục cha101 có hai thư mục con: con201con202. Thư mục con202 có hai thư mục con: con301con302. Ngoại trừ lietKeThuMuc, thư mục nào cũng có chưa vài tệp tin như trang kết quả đã cho thấy bằng màu lam (xanh dương).

Như đã cho thấy, mục đích phần mềm VBScript trong tệp mã nguồn LKTM là để liệt kê toàn bộ nội dung trong một thư mục gốc, bao gồm tất cả các tệp, các thư mục cũng như các thư mục con cháu và các tệp trong đó. Luận lý phần mềm làm việc như sau:

  1. Mã nguồn LKTM có 74 hàng. Dòng lệnh HTML trên hàng 1 và 2 đặt tên khung duyệt web kết quả.

  2. Lệnh chuyển sang cú pháp VBScript (< và % dính liền nhau) trên hàng 3 cho biết những dòng chữ kế tiếp sẽ dựa vào cú pháp VBScript thay vì HTML.
  3. Những dòng bắt đầu với gạch chéo (//) như trên hàng 4 là những lời nhận xét của lập trình viên và không cần phải thảo luận tại đây. Phần cuối hàng phía sau dấu lược (‘) trên mỗi hàng có lệnh VBScript cũng là phần nhận xét của lập trình viên. Máy chủ sẽ không xử lý phần nhận xét nên không cần bàn tại đây.

  4. Hàng 5 cho thấy thủ tục chính của phần mềm này gọi là chayThiNghiem. Sau khi gọi thủ tục này làm việc rồi thì máy chủ sẽ chấm dứt chương trình LKTM. Đó là ý nghĩa của lệnh response.End trên hàng 6.
  5. Hàng 8 đến 27 là nội dung mã nguồn cho thủ tục chayThiNghiem. Hàng 29 đến 32 là nội dung mã nguồn cho thủ tục viet. Hàng 34 đến 73 là nội dung mã nguồn cho thủ tục xetNoiDungThuMuc. Cả chayThiNghiem lẫn xetNoiDungThuMuc đều ra lệnh dùng thủ tục viet để cho những dòng xuất kết phần mềm vào trang web kết quả.

    Thủ tục viet dùng để đơn giản hoá cách viết một hàng xuất kết. Lập trình viên không cần phải nhớ lặp đi lặp lại nhiều lần thẻ lệnh br (break: xuống hàng) của HTML mỗi khi viết xong một hàng xuất kết. Viết đây không có nghĩa là máy chủ sẽ viết vào màn hình của máy chủ mà nó có nghĩa là máy chủ sẽ gữi dòng mã nguồn HTML tới để máy khách trao cho trình duyệt web xử lý. Trong trường hợp này, mỗi lần thủ tục viet thực thi (chạy), hành động chót của máy chủ cho thủ tục đó là đưa ký hiệu này cho máy khách: <br> . Khi nhận được, máy khách trao <br> cho trình duyệt web. Trình duyệt web hiểu ý nghĩa thẻ lệnh HTML này là xuống hàng nên nó sẽ gữi đến màn hình mệnh lệnh xuống hàng (Line feed) tức là ký tự số 10 của ASCII, xem Tên ký tự đặc biệt.

    Luận lý Thủ tục Chính: chayThiNghiem

    Luận lý thủ tục chính, chayThiNghiem, khá thẳng thắn và không phức tạp:

    1. Hàng 10: Cho biết giờ bắt đầu chạy phần mềm.

    2. Hàng 13: Đem tên họ thư mục gốc vào biến số tenHoThuMucCha. Lưu ý, tên họ thư mục gốc cần phải có lối về (path) và tên tệp (file name) và không phải là địa chỉ web của nó. Hàng 14 và 15 cho nội dung biến tenHoThuMucCha vào xuất kết.
    3. Hàng 17: Thành lập một minh thể loại Vật hệ tệp (FileSystemObject) ở biến số heThuMuc.

      Vật hệ tệp (FSO: FileSystemObject) là một thành phần thường dùng để truy cập hệ thống tệp tin của máy chủ nằm trong mạng web. Cho thí dụ, bạn có thể tạo các tệp, đọc nội dung của các tệp, xác định xem một bìa kẹp (thư mục) hoặc tệp tin có mặt hay không, lặp đi lặp lại xuyên qua nội dung của một thư mục hoặc danh bạ, hoặc bất cứ một số các công việc nào khác quan hệ tới của hệ tệp. Bạn có thể tạo một minh thể của thành phần Vật hệ tệp cho một trang ASP với hàng mã nguồn sau đây:

      set heThuMuc = CreateObject(“Scripting.FileSystemObject”)

      Sau khi tạo một minh thể của thành phần này, mình có thể truy cập nhiều thuộc tính (properties) và các phương pháp (methods) của nó.

    4. Hàng 20: Xây minh thể Thư mục tại biến số thuMucCha dựa vào thư mục mang tên họ trong biến số tenHoThuMucCha.

      Một trong những phương pháp của vật hệ tệp là GetFolder dùng để xây một minh thể Thư mục dựa vào tên họ một thư mục. Sau khi có minh thể Thư mục trong ký ức máy chủ rồi thì mới dễ làm việc, truy cập và thao tác với thư mục trên đĩa cứng.

    5. Hàng 23: Đưa minh thể Thư mục thuMucCha cho thủ tục xetNoiDungThuMuc xử lý nhằm xem xét và trình bày nội dung của thuMucCha.
    6. Hàng 25: Cho biết giờ chấm dứt chạy phần mềm.

      Luận lý Thủ tục Phụ: xetNoiDungThuMuc

      1. Hàng 35: Dùng thẻ lệnh HTML kêu trình duyệt web bắt đầu vẻ bảng kê xuất kết.
      2. Hàng 36 và 71: Dùng phương pháp Subfolders của minh thể thuMuc do thủ tục cha đưa qua rồi tuần tự cho mỗi thư mục con trong đó vào biến số thuMucCon và mỗi lần như thế thì thực thi những mệnh lệnh từ hàng 37 đến hàng 70.

      3. Hàng 38-44: Dùng phương pháp Đường mòn (Path) và phương pháp Tên (Name) của minh thể Thư Mục cho xem tên thư mục trong biến số thuMucCon.
      4. Hàng 47-50: Liệt kê tên các tệp tin thấy được trong thuMucCon.

      5. Hàng 57-59: Cho mỗi một thư mục thấy được trong thuMucCon, thục hàng vô 100 điểm ảnh trước khi tự gọi chính mình, lặp lại quá trình áp dụng thủ tục xetNoiDungThuMuc vào từng thư mục một có mặt trong thuMucCon.
      6. Hàng 72: Dùng thẻ lệnh HTML kêu trình duyệt web kết thúc vẻ bảng kê xuất kết.


Advertisements

One comment on “Giải thích Mã nguồn VBScript duyệt thư mục

  1. Pingback: Mã nguồn VBScript Duyệt Thư mục « Tô Mỳ Minh Duy (CTTMMD)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Information

This entry was posted on 17-06-2007 by in Lập trình, VBScript.
%d bloggers like this: