C++ 編寫DLL文件給易語言調(diào)用方法
摸索了兩天了,終于解決了所有問題,在此跟大家分享。
需要三個(gè)文件,dll_demo.h、dll_demo.cpp、dll_dome.def
直接上代碼:
頭文件如下:
#ifndef _DLL_DEMO_H_ #define _DLL_DEMO_H_ #ifdef DLLDEMO_EXPORTS #define DLL_DEMO extern "C" __declspec(dllexport) #else #define DLL_DEMO extern "C" __declspec(dllimport) #endif DLL_DEMO int __stdcall Add(int a, int b); #endif
源文件:
#define DLLDEMO_EXPORTS #include "dll_demo.h" int __stdcall Add(int a, int b) { return (a + b); }
def文件:
LIBRARY EXPORTS Add @ 1
函數(shù)需要聲明為 stdcall調(diào)用方式才能被易語言調(diào)用,def文件的主要作用為解決使用stdcall方式后函數(shù)名被改變的問題。在vs2013中引入def文件需要手動(dòng)在工程屬性,鏈接器,輸入,模塊定義文件中添加。
總結(jié):以上就是關(guān)于C++寫DLL讓易語言調(diào)用的全部方法和代碼,感謝大家的閱讀和對腳本之家的支持。
相關(guān)文章
- 形參出現(xiàn)在函數(shù)定義中,在整個(gè)函數(shù)體內(nèi)都可以使用, 離開該函數(shù)則不能使用。實(shí)參出現(xiàn)在主調(diào)函數(shù)中,進(jìn)入被調(diào)函數(shù)后,實(shí)參變量也不能使用,形參和實(shí)參的功能是作數(shù)據(jù)傳送。發(fā)生函數(shù)調(diào)用時(shí), 主調(diào)函數(shù)把實(shí)參的值傳送給被調(diào)函數(shù)的形參從而實(shí)現(xiàn)主調(diào)函數(shù)向被調(diào)函數(shù)的數(shù)據(jù)傳送2023-02-02
在Visual Studio Code中配置C++編譯環(huán)境的問題
關(guān)于Visual Studio Code對C++環(huán)境的配置方法應(yīng)該有好多種,我這里用到了其中的兩種,具體內(nèi)容詳情文中給大家詳細(xì)介紹,對Visual Studio Code配置C++編譯環(huán)境相關(guān)知識(shí)感興趣的朋友一起看看吧2021-07-07C++實(shí)現(xiàn)LeetCode(92.倒置鏈表之二)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(倒置鏈表之二),本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07如何在C++中通過模板去除強(qiáng)制轉(zhuǎn)換
本文講解的是如何在C++中通過模板去除強(qiáng)制轉(zhuǎn)換,在編程工作中應(yīng)盡量少使用強(qiáng)制類型轉(zhuǎn)換,模板有助于我們實(shí)現(xiàn)這一目的,需要的朋友可以參考下2015-07-07C語言?模擬實(shí)現(xiàn)strlen函數(shù)詳解
在 C 語言 中我們要獲取 字符串 的長度,可以使用strlen 函數(shù),strlen 函數(shù)計(jì)算字符串的長度時(shí),直到空結(jié)束字符,但不包括空結(jié)束字符,因?yàn)?nbsp;strlen 函數(shù)時(shí)不包含最后的結(jié)束字符的,因此一般使用 strlen函數(shù)計(jì)算的字符串的長度會(huì)比使用 sizeof 計(jì)算的字符串的字節(jié)數(shù)要小2022-04-04