30/09/2018, 19:15

[Wiki dll c++] ví dụ - tạo DLL trong Microsoft Visual C++ 6.0

Ví dụ 1: Làm việc từ Command Line
Bây giờ ta tạo 1 hàm cho file DLL. Dưới đây là source:

extern "C" __declspec (dllexport) void myfun (int * a) {* a = - * a; }

Lưu lại dưới dạng myfun.cpp và biên dịch nó từ cửa sổ command (cmd) với:

cl -LD myfun.cpp

Việc chuyển đổi -LD sẽ tạo ra một file DLL. Tiếp theo chúng ta tạo một file thực thi, trong đó kêu gọi các DLL.
Dưới đây là các source:

#include <iostream>

extern C __declspec (dllimport) void myfun (int * a);

void main (void)
{
   int a = 6;
   int b = a;
   myfun (& b);

   "!  n" - cout << ' << một << "là" << b <<;
}

lưu lại file với tên main.cpp file. Sau đó biên dịch và liên kết từ dấu nhắc lệnh với:

main.cpp cl / link myfun.lib

chạy file main vừa biên dịch trong cửa sổ cmd (chỉ cần gõ " main ‘’).

Ví dụ 2: Sử dụng VC++ IDE để tạo DLL
Trong Microsoft Visual C++ 6.0, bạn có thể tạo một DLL bằng cách chọn một trong hai loại dự án Win32 Dynamic-Link Library hoặc MFC AppWizard (dll) loại dự án.

Code sau đây là một ví dụ của một DLL đã được tạo ra trong Visual C ++ bằng cách sử dụng các loại dự án Win32 Dynamic-Link Library.

// SampleDLL.cpp

#include "stdafx.h"
#define EXPORTING_DLL
#include "sampleDLL.h"

BOOL APIENTRY DllMain(HANDLE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved)
{
   return TRUE;
}

void HelloWorld()
{
   MessageBox( NULL, TEXT("Hello World"), TEXT("In a DLL"), MB_OK);
}

// File: SampleDLL.h

#ifndef INDLL_H

   #define INDLL_H

   #ifdef EXPORTING_DLL
      extern __declspec(dllexport) void HelloWorld();
   #else
      extern __declspec(dllimport) void HelloWorld();
   #endif

#endif
Bài liên quan
0