|
HỒ LÔ BIẾN |
|
Mở một ứng dụng
Control Panel trong VB6
ĐÀM MINH KHÔI |
|
Khi mần một ứng dụng VB6, để chạy một ứng dụng khác,
ta thường xài hàm Shell. Hàm này có dạng: |
|
Shell(<Tên đường dẫn> [,<Kiểu cửa sổ>]) |
|
Trong đó: |
|
<Tên đường dẫn> là tên của ứng dụng
cần cho chạy, bao gồm cả thư mục, ổ đĩa. |
|
<Kiểu cửa sổ> là kiểu cửa sổ ứng dụng
khi nó được chạy. |
|
Trị mà hàm này trả về là một số (duy nhất) để định
danh ứng dụng đã được khởi động, gọi là task-ID. |
|
Ví dụ, bạn có thể cho chạy ứng dụng NotePad.exe như
sau: |
|
Dim idNotePad
idNotePad = Shell("NotePad", vbNormalFocus) |
|
Tuy nhiên, với ứng dụng Control Panel, sự
việc không đơn giản như vậy. Nếu chỉ dùng Shell
như sau: |
|
Dim idControl
idControl = Shell("Control", vbNormalFocus |
|
thì cửa sổ Control Panel sẽ xuất hiện với tất
cả các biểu tượng của các ứng dụng con. Ở đây, tôi
đề cập đến yêu cầu chỉ chạy một ứng dụng con mà
thôi. Ví dụ, để chạy ứng dụng con Date and Time,
ta phải xài hàm Shell như sau: |
|
Shell "RunDLL32.EXE Shell32.DLL, Control_RunDLL
TimeDate.CPL" |
|
Có rất nhiều ứng dụng con của Control Panel
có thể được cho chạy theo kiểu này, cho nên bạn có
thể viết một hàm dùng chung như sau: |
|
Public Sub RunCTPLApplet(strTenApplet As String)
Shell "RunDLL32.EXE Shell32.DLL, Control_RunDLL "
& strTenApplet
End Sub |
|
Ta xài hàm nêu trên như vầy: |
|
RunCTPLApplet "TimeDate.CPL" 'TimeDate
RunCTPLApplet "Desk.CPL" 'Display
RunCTPLApplet "AppWiz.CPL" 'Add or Remove programs
RunCTPLApplet "Main.CPL" 'Mouse properties |
|
|