welcome!  login / sign up
    search
Read and share stories on your mobile phone™

74794
How do I read this
on my phone?

DLL cua Windows
Wattcode: 74794

2



- tags -
windows
8.3.2 Các DLL của Windows
Các API được tổ chức trong bốn DLL chính của Windows:

a. KERNEL32:
Là DLL chính, đảm nhiệm quản lý bộ nhớ, thưc hiện chức năng đa nhiệm và những hàm ảnh hưởng trực tiếp đến hoạt động của Windows.

b. USER32:
Thư viện quản lý Windows. Thư viện này chứa các hàm xử lý menu, định giờ, truyền tin, tập tin và nhiều phần không được hiển thị khác của Windows.

c. GDI32:
Giao diện thiết bị đồ hoạ (Graphics Device Interface). Thư viện này cung cấp các hàm vẽ trên màn hình, cũng như kiểm tra phần biểu mẫu nào cần vẽ lại.

d. WINNM:
Cung cấp các hàm multimedia để xử lý âm thanh, nhạc, video thờI gian thực, lấy mẫu, v.v... Nó là DLL 32 bit. (Thư viện 16 bit tên là MMSYSTEM)

Ta có thể tìm các tập tin này trong thư mục \Windows\system. Ngoài ra, còn có các DLL nhỏ hơn, cũng được dùng phổ biến để cung cấp các dịch vụ đặc biệt cho ứng dụng.
Trên đây là các tên DLL 32 bit. Phiên bản VB4 là bản cuốI cùng còn hỗ trợ 16 bit.
8.3.3 Gọi API
Gọi API không khác gì với gọi hàm/ thủ tục trong module của đề án. Ví dụ ta có thủ tục:
Public sub FindText(obiDataControl as Control, _
SFilename as String)
' Code to implement function here
End sub

Để gọI thủ tục ta dùng :
FindText datTitles, "Titles"
Chỉ có điều API là một thủ tục không chỉ nằm ngoài module mà còn nằm ngoài Visual Basic.
8.3.3.1 Khai báo một cuộc gọI API:
Trước khi dùng hàm của DLL, ta cần khai báo hàm đó. Visual Basic cần biết:
- Tên hàm / thủ tục.
- Tập tin DLL chứa nó.
- Tham số truyền.
- Kiểu dữ liệu truyền về nếu là hàm.

Khai báo API tương tự khai báo hằng/ thủ tục thông thường. Ta vẫn bắt đầu bằng từ khoá Sub/Function, chỉ khác là trước đó phảI có từ khoá Declare.

 Ví dụ mẫu - Tạo cửa sổ nhấp nháy bằng cách gọI API

1. Tạo đề án chuẩn mớI
2. Vẽ điều khiển định giờ (timer) trên biểu mẫu và định thuộc tính
Interval là 10. Nó sẽ gây ra một sự kiện timer mỗI 10 mi-li-giây.

Hình 9.2 Biểu tượng điều khiển Timer trên hộp công cụ.

3. Nhấn đúp lên cửa sổ này để mở Cửa sổ Code
Private Sub Timer1_Timer()
Dim nReturnValue As Integer
nReturnValue = Flash(Form1.hWnd, True)
End Sub

4. Khai báo hàm Flash trong General Declarations:

Private Declare Function Flash Lib "User32" _
Alias "FlashWindow" _
(ByVal hWnd As Long, _
ByVal bInvert As Long) As Long
5. Thi hành chương trình. Khi biểu mẫu xuất hiện, tiêu đề của nó nhấp nháy.
Mặc dù ta thấy chương trình này rất đơn giản, nhưng nếu viết bằng các hàm Visual Basic thông thường, nó rất phức tạp và tốn rất nhiều chương trình.

Từ khoá Declare báo VB biết đây là khai báo một hàm của DLL.
Sau Declare là từ khoá Sub hay Function, cho biết đây là thủ tục hay hàm. Ta chỉ có một trong hai lựa chọn.
Từ khoá Lib cho biết tên DLL đang chứa hàm/ thủ tục đó. Ở đây là thư viện User32. Từ khoá Alias cho biết tên thực sự của thủ tục / hàm trong thư viện. Nó có thể khác vớI tên ta khai báo trước từ khoá Lib.
CuốI cùng là khai báo các tham sổ truyề...

Show full text: 5,119 characters
Add this button to your web page!
AddThis Social Bookmark Button

Comments & Reviews


Be the first to comment on this!

Login to add your comment.


Recommended


windows

Windows

Is Windows a virus?

Windows Shortcuts

Painted Windows

Changing themes in Windows XP

Windows Of The Soul by Paul Chafe