C++ 編寫DLL文件給易語言調用


  摸索了兩天了,終於解決了所有問題,在此跟大家分享。

  需要三個文件,dll_demo.h、dll_demo.cpp、dll_dome.def

  直接上代碼:

  頭文件如下:

1 #ifndef _DLL_DEMO_H_
2 #define _DLL_DEMO_H_
3 #ifdef DLLDEMO_EXPORTS
4 #define DLL_DEMO extern "C" __declspec(dllexport) 
5 #else
6 #define DLL_DEMO extern "C" __declspec(dllimport)
7 #endif
8 DLL_DEMO int __stdcall Add(int a, int b);
9 #endif

  源文件:

1 #define DLLDEMO_EXPORTS
2 #include "dll_demo.h"
3 
4 int __stdcall Add(int a, int b)
5 {
6     return (a + b);
7 }

  def文件:

1 LIBRARY
2 EXPORTS
3 Add @ 1

  函數需要聲明為 stdcall調用方式才能被易語言調用,def文件的主要作用為解決使用stdcall方式后函數名被改變的問題。在vs2013中引入def文件需要手動在工程屬性,鏈接器,輸入,模塊定義文件中添加。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM