HƯỚNG DẪN TẠO DLL VÀ DÙNG DLL TRONG VB
Tác giả: Peter
Cấp độ bài viết: Chưa đánh giá
Tóm tắt: Hướng dẫn tạo Dll và dùng Dll trong VB!
Hôm nay Peter sẽ hướng dẫn các bạn tạo một dll và sử dụng chúng trong VB. Bài viết này Peter
gửi cho 2 diễn đàn khác (là 2 diễn đàn mà Peter điều hành), do vậy các anh em chú ý.
Dẫn nhập:
Thật ra từ trước tới giờ Peter thấy các bạn chủ chốt là dùng các hàm API của Windows mà chưa
thường dùng đến các dll tự tạo; vậy bài viết này Peter sẽ hướng dẫn các bạn tạo một dll và dùng
nó để viết ứng dụng trong VB; với VB thì Peter sẽ trình bày cách tạo dll class xây dựng trên
chính môi trường VB; và một phần khác Peter sẽ xây dựng dll Windows bằng VC++ (Cái này thì
Peter cũng lưu ý các bạn rằng: Các bạn phải có một chút kiến thức về lập trình C/C++; nếu có
thể các bạn hãy qua [url]congdongcviet.com[/url] (Peter cũng đang diều hành box C/C++ bên
đó) để tìm hiểu về ngôn ngữ này). Sau đây mời các bạn theo dõi nội dung chính: (Chúng ta sẽ
xây dựng một chương trình tính tổng 2 số Double)
Phần 1: Viết dll Class và ứng dụng
1. Viết dll Class:
Dll Class là một loại dll được xây dựng bằng chính môi trường VB, ở đây Peter dùng VB6.0 để
làm việc này. Các bước xây dựng như sau:
- Bước 1: Khởi động VB6.0 và chọn ActiveX Dll trên tab New của hộp thoại New Project.
- Bước 2: Đặt thuộc tính Name cho Class này là ClsTong. Thuộc tính Instancing là 6-
GlobalMultiUser.
- Bước 3: Cho đoạn code sau vào cửa sổ code:
Public Function Tong(a As Double, b As Double) As Double
On Error Resume Next
Tong = a + b
End Function
- Bước 4: Chọn menu File\Make Project1.dll và biên dịch. Đặt tên dll này là Tong.dll
Như vậy là chúng ta đã thành công trong việc biên dịch tạo một dll class bằng VB6.0.
2. Ứng dụng:
Sau khi tạo được dll Class Tong.dll chúng ta làm trình tự các bước sau:
- Bước 1: Tạo một Project mới, lần này chúng ta chọn Standard EXE. Và đặt Name cho Project
là TestDll.
- Bước 2: Tạo 3 TextBox là Text1, Text2, Text3 (Trong đó Text3 dùng để lưu kết quả tính tổng
của Text1 và Text2). Thêm một CommandButton có Name là Command1.
1
- Bước 3: Nhấn chọn menu Project\References và nhấn chọn Browse; chọn đường dẫn đến Dll
chúng ta biên dịch phía trên và nhấn OK để kết thúc quá trình chọn.
- Bước 4: Đặt đoạn code sau vào cửa sổ code:
Private Sub Command1_Click()
Dim x As New ClsTong
Text3 = x.Tong(Text1, Text2)
End Sub
Sau đó nhấn F5 để thực thi chương trình. Chúng ta nhập vào 2 ô Text1 và Text2 những con số và
nhấn button Command1. Kết quả là Tổng của 2 ô đó được hiện trong Ô Text3 Các bạn có hài
lòng không?
Phần 2: Viết dll Windows và ứng dụng
1. Viết dll Windows
Phần này Peter sẽ hướng dẫn các bạn tạo một dll WIndows bằng VC++6.0; các thao tác làm như
sau:
- Bước 1: Khởi động VC++6.0; nhấn Ctrl+N hoặc vô menu File\New; chọn tab Projects trong
hộp thoại New; chọn tiếp Win32 Dynamic-Link Library trong danh sách của tab, Tiếp tục là đặt
tên cho Project tại TextBox Project name (Ở đây Peter đặt là DllWin). Nhấn OK để tiếp tục.
- Bước 2: Chọn A simple dll project (lựa chọn thứ 2 trong 3 lựa chọn xuất hiện). Nhấn Finish và
chọn tiếp OK.
- Bước 3: Trên tab FileView kích đúp vào file DllWin.cpp; xoá bỏ code có sẵn là:
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
}
và thay bằng đoạn code sau:
double _stdcall Tong(double x,double y)
{
return x+y;
}
- Bước 4: Dùng NotePad để soạn một tập tin DllWin.def (cùng tên với Project), với nội dung
sau:
EXPORTS
Tong;
Chú ý viết đúng như trên (phân biệt chữ hoa và chữ thường), tên hàm Tong phải trùng với tên
hàm của code trên. Sau đó đặt file này chung thư mục với dự án DllWin.dsw.
- Bước 5: Trở lại VC++ chúng ta chọn menu Project\Add to project\Files và chọn file DllWin.def
để add file này vào dự án. Nhấn OK.
2
- Bước 6: Biên dịch dll bằng cách nhấn F7. Một file dll có tên là DllWin.dll sẽ xuất hiện trong
thư mục Debug. Hãy copy file này vào C:\Windows\System32.
Vậy là chúng ta đã biên dịch và tạo thành công file DllWin.dll để phục vụ cho chương trình VB
của chúng ta.
2. Ứng dụng
Khởi động VB6.0 và làm theo các bước từ 1 đến 2 của bài hướng dẫn trước.
- Bước 3: Đặt đoạn code sau vào cửa sổ code:
Private Declare Function Tong Lib "DllWin.dll" (ByVal x As Double, ByVal
y As Double) As Double
Private Sub Command1_Click()
Text3 = Tong(Text1, Text2)
End Sub
- Bước 4: Nhấn F5 để thực thi; nhập số vào các Text1, Text2 và nhân Command1; so sánh kết
quả của bài hướng dẫn trước!
Chúc các bạn thành công!
3