佳泰生活

青山传琴韵,流水送知音

导出C++ dll中的类

今日做一个小程序来练手
要求:做一个dll,dll中包含一个函数,这个函数的主要作用就是显示一个messagebox,调用者调用这个函数,来显示一些消息

首先在定义一个类,由于在使用时,我们应实例化这个类,所以在这个类之前应加上__declspec(dllexport),来确保导出了类的构造函数
由于我们用到了mfc,所以在代码之前加入

#ifndef __AFXWIN_H__
 #error include 'stdafx.h' before including this file for PCH
#endif

//---------------------------------------------------------------

#pragma once
#ifndef __AFXWIN_H__
    
#error include 'stdafx.h' before including this file for PCH
#endif

class __declspec(dllexport) cxyMessTest
{
public:
    cxyMessTest(
void);
    
~cxyMessTest(void);

    
void CxyShowMess(LPCTSTR mess);
};
//类的实现

#include 
"StdAfx.h"
#include 
".cxymesstest.h"

cxyMessTest::cxyMessTest(
void)
{
}

cxyMessTest::
~cxyMessTest(void)
{
}
void cxyMessTest::CxyShowMess(LPCTSTR mess)
{
    AfxMessageBox(mess,MB_OK,
0);
}

 接下为在 def文件中定义好要导出的函数

第三步在工程上调用
第一步:C++ application
第二步:拷贝生成的dll到debug目录下,
第三步:拷贝c++ dll的.h文件到app的目录下,并添加到 app中
第四步:#include "cxymesstest.h"
调用就可以了
cxyMessTest * test;
test=new cxyMessTest();
test->CxyShowMess("Hell world");

阅读更多
个人分类: C++
上一篇SharpDevelop的addin结构
下一篇stdcall
想对作者说点什么? 我来说一句

C++ DLL 导出类 示例

2015年08月06日 25KB 下载

没有更多推荐了,返回首页

关闭
关闭