VC++2005 编写只有资源文件的DLL及其调用方法
2009-05-02 02:49
429 查看
VC++2005 编写只有资源文件的DLL及其调用方法
作者:邵盛松 2009年5月2日
目的:将图片,图标等存入 DLL中,然后在其他程序中调用
本文示例是将bitmap文件添加到dll中然后在dll中调用
第一步:建立DLL文件
步骤:
1 点击菜单-文件-新建项目-项目类型选择Win32-模版选择Win32项目。
2 在向导中应用程序类型选择DLL,附加选项选择空
3添加资源文件,在解决方案中右键点击资源文件,添加-资源,在添加资源对话框中,新建或者添加想要添加的文件
4添加之后编译出现如下错误
error LNK2001: 无法解析的外部符号 __DllMainCRTStartup@12
解决方法:
点击菜单上的项目 -属性- 配置属性 -高级-无入口点 选择"是(/NOENTRY)"
5 编译生成DLL文件
在这里并不需要添加WinMain函数之后编译。生成的DLL的文件的名字是mydll.dll
第二步:在程序中调用
1新建一个对话框工程DLLTest
2在DLLTest 工程中的resource.h文件中,添加dll中图片文件的ID
例如#define IDB_BITMAP_BACKGROUND 7777 //7777是我自定义的ID
3为按钮添加图片,设置按钮的Bitmap属性为true,为按钮添加一个控件变量m_Button_Test
为按钮事件添加如下代码
HMODULE hModule = LoadLibrary(TEXT("mydll.dll"));
if(!hModule)
return;
HBITMAP hBitmap = LoadBitmap(hModule,MAKEINTRESOURCE(IDB_BITMAP_BACKGROUND));
m_Button_Test.SetBitmap(hBitmap);
FreeLibrary(hModule);
4编译生成DLLTest.exe文件,运行DLLTest.exe,点击按钮按钮就载入了图片
mydll项目在VC++2005 win32项目下调试通过
DLLTest在VC++2005 MFC Dialog Unicode下调试通过
作者:邵盛松 2009年5月2日
目的:将图片,图标等存入 DLL中,然后在其他程序中调用
本文示例是将bitmap文件添加到dll中然后在dll中调用
第一步:建立DLL文件
步骤:
1 点击菜单-文件-新建项目-项目类型选择Win32-模版选择Win32项目。
2 在向导中应用程序类型选择DLL,附加选项选择空
3添加资源文件,在解决方案中右键点击资源文件,添加-资源,在添加资源对话框中,新建或者添加想要添加的文件
4添加之后编译出现如下错误
error LNK2001: 无法解析的外部符号 __DllMainCRTStartup@12
解决方法:
点击菜单上的项目 -属性- 配置属性 -高级-无入口点 选择"是(/NOENTRY)"
5 编译生成DLL文件
在这里并不需要添加WinMain函数之后编译。生成的DLL的文件的名字是mydll.dll
第二步:在程序中调用
1新建一个对话框工程DLLTest
2在DLLTest 工程中的resource.h文件中,添加dll中图片文件的ID
例如#define IDB_BITMAP_BACKGROUND 7777 //7777是我自定义的ID
3为按钮添加图片,设置按钮的Bitmap属性为true,为按钮添加一个控件变量m_Button_Test
为按钮事件添加如下代码
HMODULE hModule = LoadLibrary(TEXT("mydll.dll"));
if(!hModule)
return;
HBITMAP hBitmap = LoadBitmap(hModule,MAKEINTRESOURCE(IDB_BITMAP_BACKGROUND));
m_Button_Test.SetBitmap(hBitmap);
FreeLibrary(hModule);
4编译生成DLLTest.exe文件,运行DLLTest.exe,点击按钮按钮就载入了图片
mydll项目在VC++2005 win32项目下调试通过
DLLTest在VC++2005 MFC Dialog Unicode下调试通过
相关文章推荐
- DLL DEF文件编写方法 VC++ 调用、调试DLL的方法 显式(静态)调用、隐式(动态)调用
- VC++编写DLL导出函数及其调用方法
- C# 获取资源文件中的DLL,调用DLL中的方法
- vc编写Dll文件和调用的方法
- matlab编写的.M文件用vc6.0(MFC(dll)工程转换为dll文件,并用vc6.0(MFC对话框工程调用dll)文件
- windows下的动态链接问题(.dll文件的编写与调用)
- CSharp调用C++编写的DLL的方法
- OCX调用dll打成cab包时候inf文件编写
- C#实现反射调用动态加载的DLL文件中的方法
- Eclipse、MinGW、JNI编写C++生成dll, Java端调用的完整示例(附java.lang.UnsatisfiedLinkError解决方法)
- 给C#程序加壳(C# 调用嵌入资源的EXE文件方法)
- Delphi 中将一些 Dll等生成资源文件打包成一个独立的EXE程序方法步骤
- com调用的几种方法 及 C#调用C++编写的的COM DLL
- Java调用 dll 文件里的方法
- Delphi环境中编写调用DLL的方法和技巧
- C++与C#编写的DLL/COM的各种调用方法
- 22.Silverlight使用WebService调用C++,Delphi编写的DLL文件
- c#调用c++生成dll文件中的类方法
- 将DLL放在资源文件中,利用反射来调用它的泛型函数!
- Java框架JNA调用C方法(windows链接库dll文件、linux链接库so文件)