Dll擴充套件匯出類使用方法記錄

2021-06-20 05:18:20 字數 1248 閱讀 4400

如果是尋求dll匯出類的具體操作請另搜尋,該文為自己的除錯記錄,自收藏

可參考codeproject 中的

為了方便匯出還是匯入的自動配置。(關於什麼是匯出什麼是匯入,如果是自建乙個dll,則想向外匯出給其他dll或exe使用則必須宣告為匯出,  對於乙個想使用其他dll a中的函式或類的dll b,則a中的東西對b來說就是匯入)所以在標頭檔案中使用自定義巨集定義的方法可以宣告是匯出還是匯入

新建乙個標頭檔案 mylib.h內容如下:

#pragma once

// the following will ensure that we are exporting our c++ classes when

// using this dll.

#ifdef _mylib_dllapi_

#define mylib_dllapi __declspec( dllexport )

#else

#define mylib_dllapi __declspec( dllimport )

#endif

// when linking.

#ifndef _mylib_noautolib_

#ifdef _debug

#pragma comment(lib, "../debug/******mfcdll.lib")//請將這裡改為debug版本的lib檔名../的介紹在後文 請ctrl+f搜尋

#else

#pragma comment(lib, "******mfcdll.lib")//請將這裡改為release版本的lib檔名

#endif

#endif

class mylib_dllapi a

void say();

};

在dll專案中的stdafx.h中定義

#define _mylib_dllapi_

#define _mylib_noautolib_

如果在編譯時提示找不到stdafx.h,注意關一下exe專案的stdafx.h檔案再編譯

在要使用的主專案中包括兩類檔案.h和lib檔案。

將要匯出的類的標頭檔案拷貝進專案(或是在要使用的專案包括mylib.h標頭檔案也行,注意跨資料夾的包含 請使用 ../方式,../表示當前目錄的上級目錄,還可以連續使用../表示上級目錄的上級目錄如"../../"的使用方式)

MFC擴充套件DLL匯出類相關問題

用嚮導建立乙個擴充套件dll工程,新增乙個類,然後在類前面名前加afx ext class 就行了,這個類就被匯出了,網上例子很多,似乎也很簡單,其實類複雜一點,就會有些問題了,如 extdlg.h pragma once include resource.h include d dlg.h 另乙個...

Markdown使用方法記錄

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...

記錄NPOI使用方法

設定單元格的樣式 水平對齊居中 style.alignment horizontalalignment.center 垂直居中 style.verticalalignment verticalalignment.center 新建乙個字型樣式物件 ifont font workbook.create...