1. 程式人生 > >vs2015 生成dll和lib

vs2015 生成dll和lib

#ifndef _Interface_h_
#define _Interface_h_
#ifdef MAKEDLL_EXPORTS // 此巨集在預編譯中定義,可以生成dll
#define MAKEDLL_API __declspec(dllexport)
#else
#define MAKEDLL_API __declspec(dllimport)
#endif
#ifdef __cplusplus
extern "C"
{
#endif
	MAKEDLL_API int add(int a, int b);
#ifdef __cplusplus
}
#endif
#endif

建立一個
Interface.cpp

#include "Interface.h"
MAKEDLL_API extern "C" int add(int a, int b)
{
	return a + b;
}

建立主函式,什麼也不用寫
main.cpp

int main(int argc, char* argv[])
{
	return 0;
}

在屬性中配置一下
1:exe —> dll
在這裡插入圖片描述
2: 在預編譯選項中加入
在這裡插入圖片描述

編譯程式即可得到 .dll 和 .lib

相關推薦

vs2015 生成dlllib

#ifndef _Interface_h_ #define _Interface_h_ #ifdef MAKEDLL_EXPORTS // 此巨集在預編譯中定義,可以生成dll #define MAK

visual studio C/C++ 程式設計學習(二) 同時生成dlllib檔案

    之前手裡有幾個VS2008 C++的工程,因為懶,所以每次都是把前面一個複製到後面一個,再重寫程式碼,這樣的好處就是不用再設定一些庫和依賴項(尤其是OpenCV的dll和lib要填寫一大堆,很是麻煩)。今天又故技重施,拷貝了一個工程,但是小手一抖,不知道修改了哪兒的

VS中def檔案對於生成dlllib檔案的作用

把 sqlite3.def 新增到工程中. 選擇工程 > 屬性中的連結器,然後找到"輸入"這一項. 在 "模組定義檔案" 中輸入  sqlite3.def 注意: 你需要在 Debug 和 Release 中都輸入該項才行. 一、 __declspec(dllexport) 在 32

VC中利用動態連結庫工程生成dlllib檔案

這是在VC6中利用動態連結庫工程生成dll和lib檔案的簡單例程。 1. 建立動態連結庫工程。 2. 建立完成後,建立add.h檔案,如下。 #ifndef __ADD_H__ #define __ADD_H__ #include <string.h> __

dlllib關系及使用

分享圖片 pen 查找 rar 例子 兩個 變量 註意 圖片 對於dll和lib兩者的關系,需要理解的一個概念是編譯時和運行時。 lib是編譯時的東西,在lib裏面包含了方法名和方法所在的dll名字,可以用dumpbin -all XXX.lib查看內容。

如何將其他專案的.dll.lib檔案第三方庫以及標頭檔案加入到Visual Studio的專案中

首先說明,儘量慎重依賴於第三方庫,除非自己很熟悉或自己能力強,對第三方庫知道怎麼使用,否則很容易造成一些意想不到的錯誤,除錯這些錯誤可能還不如自己寫檔案解決來的更快一些。 VS中提供兩種不同的專案配置方式: 第一種是配置自己電腦的VS屬性,在“Solution Explor

C++ 基礎(五)使用vs2015封裝c++生成.dll檔案、.lib檔案、.h檔案後,給另一個工程使用:使用前,需配置標頭檔案(.h)靜態庫(.lib 動態庫(.dll )專案屬性

一、簡介 我是一個認真的人,要麼不寫,要麼我就把步驟、截圖、程式碼,一 一 附上,方便大家參考學習。 1、為什麼要生成DLL和lib?      就是為了給VS工程呼叫(比如C#呼叫、C++工程)。 2、C#為什麼要呼叫DLL和lib? C++寫的程

windows下lib dll 的區別、生成使用詳解

首先介紹一下靜態庫(靜態連結庫)、動態庫(動態連結庫)的概念,首先兩者都是程式碼共享的方式。靜態庫:在連結步驟中,聯結器將從庫檔案取得所需的程式碼,複製到生成的可執行檔案中,這種庫稱為靜態庫,其特點是可執行檔案中包含了庫程式碼的一份完整拷貝;缺點就是被多次使用就會有多份冗餘拷貝。即靜態庫中的指令都全部被直接包

vs2015+opencv生成DLL並分別靜態動態呼叫

網路上關於vs生成dll的教程很多,解決方案繁雜,令人眼花繚亂,踩坑後推薦幾篇不錯的教程,親自測試可以通過的,我的除錯環境是vs2015 enterprise版+win10+opencv3.4.1。教程1:最簡單的DLL生成與呼叫教程:作者採用了宣告類進行打包的方法來呼叫。教

Unity3D專案程式加密1——在Unity3D裡使用自己的dll生成dll

轉載自:http://liweizhaolili.blog.163.com/blog/static/1623074420144313825921/ 如果稍微關注過這方面知識的朋友,應該知道Unity3D做出來的專案是非常容易被反編譯的,被反編譯後你的所有資源和程式碼都將會毫無遮掩的呈現出來

C++生成dll提供給C#C++本身呼叫

1.專案整體結構如下:                                       &nb

vs2015 編譯C 生成 dll Jni呼叫

1.編譯java生成.class 2利用javah生成JNI .h標頭檔案 3.利用VS2015生成專案         生成dll成功 4.測試的d

VS2013生成、使用dlllib檔案

一般來說專案偏愛生成dll檔案,具體原因後面會解釋。 什麼是庫 庫是寫好的現有的,成熟的,可以複用的程式碼。現實中每個程式都要依賴很多基礎的底層庫,不可能每個人的程式碼都從零開始,因此庫的存在意義非同尋常。 本質上來說庫是一種可執行程式碼的二進位制形式,可以被作業系統載入記憶體執行。

VC中dlllib檔案dll有什麼不同?

dll是在你的程式執行的時候才連線的檔案,因此它是一種比較小的可執行檔案格式,.dll還有其他的檔案格式如.ocx等,所有的.dll檔案都是可執行。 .lib是在你的程式編譯連線的時候就連線的檔案,因此你必須告知編譯器連線的lib檔案在那裡。一般來說,與動態連線檔案相對

VC 生成DLL工程不生成LIB檔案解決方案

1.請先檢視是否輸入.def檔案 右鍵工程->連結器->輸入->模組定義檔案項 填入def檔案路徑 2.第一步如果OK請檢視連結器->高階->匯入庫 該項的值為lib檔案的輸出路徑 如果為空則輸出到與DLL同徑下。

VS生成DLL沒有生成LIB檔案的解決方法

1、在所建工程上單擊滑鼠右鍵,在彈出的右鍵選單中選擇“新增-->新建項....---->模組定義檔案”,在該模組定義檔案中寫匯出函式表,單擊確定。然後在所建工程上單擊滑鼠右鍵,選擇“屬性”選單,在彈出的屬性對話方塊中“連結器-->輸入-->模組定義

c++中使用外部庫exe,.dll與.lib檔案的生成與使用的詳解

兩種庫: •  包含了函式所在的DLL檔案和檔案中函式位置的資訊(入口),程式碼由執行時載入在程序空間中的DLL提供,稱為動態連結庫dynamic link library。 •  包含函式程式碼本身,在編譯時直接將程式碼加入程式當中,稱為靜態連結庫static li

利用VS2010生成DLL檔案及DLL中函式全域性變數的使用

一、首先利用VS2010生成DLL檔案,步驟如下 1、開啟VS2010,在左邊的框欄中選擇C++,中間選擇win32控制檯應用程式,如下圖 2、確認後,彈出下面對話方塊 3、選擇下一步,彈出如

動態連結庫dll靜態連線庫lib的區別

          由於專業原因,一直沒有系統的學習過c++。最近在學習opencv,而opencv的配置對於程式設計經驗不豐富的人來說理解起來還是需要一個過程的。opencv配置的設定涉及到兩個很重要的概念:dll和lib。          首先什麼是dll和lib?

VS2015錯誤(二) msvcp120d.dllmsvcr120d.dll缺失

          電腦系統:win10 64位  軟體:vs2015+opencv 3.0.0          問題:程式編譯通過後執行時提示:msvcp120d.dll和msvcr120d.dll缺失。按照網上的方法下載相應的dll檔案放入C:\Windows\Sys