资源简介
实例在Visual Studio 2008 SP1 IDE中如何创建、编写和导出DLL,以及如何调用生成的DLL。
代码片段和文件信息
// FirstDLL.cpp : 定义 DLL 的初始化例程。
//
#include “stdafx.h“
#include “FirstDLL.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
//
//TODO: 如果此 DLL 相对于 MFC DLL 是动态链接的,
// 则从此 DLL 导出的任何调入
// MFC 的函数必须将 AFX_MANAGE_STATE 宏添加到
// 该函数的最前面。
//
// 例如:
//
// extern “C“ BOOL PASCAL EXPORT ExportedFunction()
// {
// AFX_MANAGE_STATE(AfxGetStaticModuleState());
// // 此处为普通函数体
// }
//
// 此宏先于任何 MFC 调用
// 出现在每个函数中十分重要。这意味着
// 它必须作为函数中的第一个语句
// 出现,甚至先于所有对象变量声明,
// 这是因为它们的构造函数可能生成 MFC
// DLL 调用。
//
// 有关其他详细信息,
// 请参阅 MFC 技术说明 33 和 58。
//
// CFirstDLLApp
BEGIN_MESSAGE_MAP(CFirstDLLApp CWinApp)
END_MESSAGE_MAP()
// CFirstDLLApp 构造
CFirstDLLApp::CFirstDLLApp()
{
// TODO: 在此处添加构造代码,
// 将所有重要的初始化放置在 InitInstance 中
}
// 唯一的一个 CFirstDLLApp 对象
CFirstDLLApp theApp;
// CFirstDLLApp 初始化
BOOL CFirstDLLApp::InitInstance()
{
CWinApp::InitInstance();
return TRUE;
}
/**
函数:int calculateLineNum(CString filePath)
功能:用于计算文本文件的行数
日期:2012-04-09
版本:V1.0.0.1
作者:Margin MOU
描述:只需要指定文本文件的路径,若找到,则返回其行数,若没找到,则返回0
*/
extern “C“ _declspec(dllexport) int calculateLineNum(CString filePath)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CStdioFile file;
CString str;
int lineNum=0;
if (file.Open(_T(filePath)CFile::modeRead | CFile::typeText))
{
file.SeekToBegin();
while (file.ReadString(str))
{
lineNum++;
}
file.Close();
}
return lineNum;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 18896 2012-04-09 17:29 Point28\FirstDLL\FirstDLL.aps
文件 1709 2012-04-09 17:29 Point28\FirstDLL\FirstDLL.cpp
文件 104 2012-04-09 16:35 Point28\FirstDLL\FirstDLL.def
文件 407 2012-04-09 16:35 Point28\FirstDLL\FirstDLL.h
文件 3044 2012-04-09 16:35 Point28\FirstDLL\FirstDLL.rc
文件 881 2012-04-09 16:35 Point28\FirstDLL\FirstDLL.sln
..A..H. 15872 2012-04-18 16:14 Point28\FirstDLL\FirstDLL.suo
文件 5305 2012-04-09 17:27 Point28\FirstDLL\FirstDLL.vcproj
文件 2068 2012-04-09 16:35 Point28\FirstDLL\ReadMe.txt
文件 364 2012-04-09 16:35 Point28\FirstDLL\res\FirstDLL.rc2
文件 364 2012-04-09 16:35 Point28\FirstDLL\Resource.h
文件 139 2012-04-09 16:35 Point28\FirstDLL\stdafx.cpp
文件 1131 2012-04-09 16:35 Point28\FirstDLL\stdafx.h
文件 1030 2012-04-09 16:35 Point28\FirstDLL\targetver.h
文件 81920 2012-04-09 17:27 Point28\TestDLL\Debug\FirstDLL.dll
文件 2869 2012-04-09 16:46 Point28\TestDLL\Debug\ReadMe.txt
文件 153600 2012-04-10 11:02 Point28\TestDLL\Debug\TestDLL.exe
文件 81920 2012-04-09 17:27 Point28\TestDLL\FirstDLL.dll
文件 1752 2012-04-09 17:27 Point28\TestDLL\FirstDLL.lib
文件 2869 2012-04-09 16:46 Point28\TestDLL\ReadMe.txt
文件 67777 2007-11-28 16:21 Point28\TestDLL\res\TestDLL.ico
文件 363 2012-04-09 16:46 Point28\TestDLL\res\TestDLL.rc2
文件 725 2012-04-09 16:47 Point28\TestDLL\resource.h
文件 140 2012-04-09 16:46 Point28\TestDLL\stdafx.cpp
文件 1854 2012-04-09 16:46 Point28\TestDLL\stdafx.h
文件 1030 2012-04-09 16:46 Point28\TestDLL\targetver.h
文件 105044 2012-04-09 17:17 Point28\TestDLL\TestDLL.aps
文件 1666 2012-04-09 16:46 Point28\TestDLL\TestDLL.cpp
文件 451 2012-04-09 16:46 Point28\TestDLL\TestDLL.h
文件 5169 2012-04-09 17:17 Point28\TestDLL\TestDLL.rc
............此处省略14个文件信息
- 上一篇:C++电梯调度系统源代码
- 下一篇:welch功率谱的c语言程序.txt
相关资源
- 马石安编写的VC++程序设计与应用程序
- 本例程采用VC++ 实现JPG格式图片的打开
- VC++异步通信的socket类
- 固高GT编程手册的Vc++单轴运动程序
- AES加密解密系统 VC++6.0 实现
- VC++access与excel数据的导入导出
- opengl实现鼠标坐标的显示
- VC++关于纹理特征提取的代码完整
- 基于mfcvc++6.0的图书馆管理系统
- 贝塞尔曲面 vc++ opengl
- 如何在VC++ 6.0创建RTX项目
- VC++ 实现将本地文件通过HTTP上传到网
- VC++采用内存映射方式高效率读写大数
- 《C语言课程设计》 学生成绩管理系统
- VC++6.0无法打开工程解决办法
- VC++6.0实现读取硬盘唯一序列号源码和
- mfc安装全局钩子,显示窗口的标题
- 使用动态优先权的进程调度算法的模
- 读取串口数据并画实时曲线的VC++程序
- VC++实现滑块皮肤 slider skin
- MFC 计算文件MD5码 VC++
- VC++垃圾文件清理工具源码.rar
- Win32窗口创建源码 by浅墨
- vc++6.0配置OpenCV
- http协议实现c++
- VC++ 多光谱影像处理
- 酒店管理系统 VC++ MFC实现)
- vc++ 浏览器 完整版
- 基于VC++的带通滤波器的设计与实现
- VC++查看鼠标在图像选点坐标程序
评论
共有 条评论