1.在VC6中新建工程,选择Win32 Dynamic-Link Libary,输入dll名称如 DLL2015 2.在类型选择中,选择第2项 A Simple Dll project OK 3.随后系统会生成简单的框架,如下: #include "stdafx.h" BOOL APIENTRY DllMain( HANDLE hModule,DWORD  ul_reason_for_call,LPVOID lpReserved) { return TRUE; } 4.在#includ…
上例建立的dll为非MFC的,不能使用MFC框架,如CString.对话框等类型,使用起来有一定限制.可以建立MFC的Dll来改进.建立MFC Dll的方法: 1.在VC6中新建工程时选择:MFC AppWizard(dll) 2.保持默认的 Regular Dll using shared MFC DLL完成. 3.此时生成的App具有.h .cpp两个文件,与上面只有.cpp有所不同 4.相同的是在.cpp文件中 添加函数 extern "C" __declspec(dllexpo…
设计一个DLL,内含一个函数计算a+b: DLL的组成 .h(头文件) 定义了DLL能够导出的函数.数据结构或类的声明,该文件的声明内容在.CPP文件中实现,而.CPP的源程序被封装到DLL文件中 .LIB(导入库文件) 导入库文件包含调用DLL的隐式链接信息,当应用程序以隐含形式调用DLL时,导入库文件中的信息被复制到应用程序的代码中 .DLL(实际代码文件) 实际的可执行代码,包含函数的代码和一张表,表中包含函数名和地址 创建DLL文件:头文件sum.h extern "C" in…
CString在当今软件设计界里还是小有名气的,说它是MFC中使用的最多的类一点也不过,然而在使用sdk编windows程序的时候,确不能利用CString类,只能用sdk的运行时库,比如strlen,strcpy,strstr等等,本文讨论的是在非mfc程序中使用CString类的方法,算是个引子,如果有更好的实现方法,欢迎大家讨论. 为了使用CString类,首先源文件必须是以cpp结尾的,这是因为vc默认对不同的扩展名采用不同的编译方法和错误检查,mfc的支持文件Afx.h只有由cpp为扩…
目录(?)[-] 需求说明 常见问题 问题分析 参考解决方法 我的解决方案 Stdafxh的原理   需求说明 C++工程的类型有很多,从VS(或VC)可以看到常见的有:Win32 Console Application.MFC Application.Win32 Project等.在创建MFC工程时,通过IDE的向导会自动帮我们创建相应的类文件和包含必需的头文件,但有时候我们需要在非MFC工程中包含MFC的库.至于为什么会有这个需要,为何不在一开始就创建MFC工程呢?可能有两种原因:1.在MF…
论坛有会员用到了.,今天给大家说说CSring如何在非mfc下的调用第一:先要包含 #include "afx.h" 包含之后会报windows.h重复定义我们需要把这个头文件包含在windows.h的前面 第二:alt+f7 快捷键 设置---或者菜单--工程--设置---点击常规--使用MFC作为静态的   或者可以设置MFC为共享的DLL 第三:alt+f7 快捷键 设置---或者菜单--工程--设置---切换到C\C++ 点击Code Generation --use-run-…
/************************************************************************************** * VC++ 6.0 C8051F340 MFC programming note * 声明: * 本文主要在使用VC++ 6.0 MFC的时候,对一些之前不知道的东西进行记录. * * 2015-10-16 晴 深圳 南山平山村 曾剑锋 ******************************************…
关于visual studio 2015 智能提示英文,而非中文的解决方案:   找到这个目录 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework 然后进\v4.0\zh-Hans的目录,全部复制,然后覆盖掉\v4.5\zh-Hans就行了!    …
最近在做基于组件化MFC界面的开发,需要把界面封装到动态库中. 一:工程创建步骤 1.创建MFC DLL工程,选择 “在共享 DLL 中使用 MFC”. 2.运行时库选择:c/c++-->代码生成-->运行库  “多线程调试 DLL (/MDd)”. 二:定义导出界面基类 定义导出界面接口类,待导出界面需要继承该接口类,并实现该接口定义的虚函数.如下: class IHpDllWin :public CDialog { public: // 构造函数,ID为窗口资源ID IHpDllWin(i…
现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题.这里我们从Win32   DLL和MFC   DLL两个方面来分析并解决这个问题.           1.Win32   DLL               在Win32   DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控件.然后使用DialogBox或者CreateDialog这两个函数(或相同作用的其它函数)来创建对话框,并定义…