做插件!
来源:互联网 发布:网络机房运维管理制度 编辑:程序博客网 时间:2024/04/25 12:20
最近想做个插件化的项目。
先开辟个地盘,记录一下。
看了相关文章:
http://topic.csdn.net/t/20050811/10/4202295.html
http://topic.csdn.net/t/20050511/10/3997353.html
2008-8-25
带有界面的插件化的方法:
第一种:动态库解决方法.
1:建立一个动态库。
2:建立一个固定的输出接口。
3:在DLL的输出接口中添加如下方法:
AfxSetResourceHandle(AfxGetInstanceHandle());
要在Create窗体之前添加。
4:相应的在调用的地方:
首先要添加:
//先保存本地资源.
HINSTANCE hOldInst;
hOldInst = ::AfxGetResourceHandle();
//===低级调用方法等代码.
CoInitialize(NULL);
HMODULE hDll = LoadLibraryA("E://CheckWord.dll");
LoadWindows GetName = (LoadWindows) GetProcAddress(hDll,"LoadWindows"); //函数指针已经声明
GetName();
CoUninitialize();
//===调用完毕
//回复本地资源
::AfxSetResourceHandle(hOldInst);
第二种: ATL建立的COM
1:建立一个ATL的COM组件。
2:COM的添加一个DLL的输出接口
3:在接口中加入如下的语句
AFX_MANAGE_STATE(AfxGetStaticModuleState());
要在每个函数的第一行代码处添加。
4:在掉用的地方直接写:
//===低级调用方法等代码.
CoInitialize(NULL);
HMODULE hDll = LoadLibraryA("E://CheckWord.dll");
LoadWindows GetName = (LoadWindows) GetProcAddress(hDll,"LoadWindows"); //函数指针已经声明
GetName();
CoUninitialize();
带有界面的插件化的方法:
第一种:动态库解决方法.
1:建立一个动态库。
2:建立一个固定的输出接口。
3:在DLL的输出接口中添加如下方法:
AfxSetResourceHandle(AfxGetInstanceHandle());
要在Create窗体之前添加。
4:相应的在调用的地方:
首先要添加:
//先保存本地资源.
HINSTANCE hOldInst;
hOldInst = ::AfxGetResourceHandle();
//===低级调用方法等代码.
CoInitialize(NULL);
HMODULE hDll = LoadLibraryA("E://CheckWord.dll");
LoadWindows GetName = (LoadWindows) GetProcAddress(hDll,"LoadWindows"); //函数指针已经声明
GetName();
CoUninitialize();
//===调用完毕
//回复本地资源
::AfxSetResourceHandle(hOldInst);
第二种: ATL建立的COM
1:建立一个ATL的COM组件。
2:COM的添加一个DLL的输出接口
3:在接口中加入如下的语句
AFX_MANAGE_STATE(AfxGetStaticModuleState());
要在每个函数的第一行代码处添加。
4:在掉用的地方直接写:
//===低级调用方法等代码.
CoInitialize(NULL);
HMODULE hDll = LoadLibraryA("E://CheckWord.dll");
LoadWindows GetName = (LoadWindows) GetProcAddress(hDll,"LoadWindows"); //函数指针已经声明
GetName();
CoUninitialize();
-----------------
在COM 中的STDMETHOD(OnDisconnection)函数声明是干什么的,也是接口?请同仁赐教。
- 做插件!
- 做虚假的插件
- delphi做的插件
- 数学公式插件怎么做?
- DTCMS做插件
- 做Flash效果的插件
- eclipse做界面插件安装
- 给 eclipse 做个日历的插件
- 如何用JAVA做IE插件?
- 做了一个c# document viewer插件
- 挑战未知 | 帮朋友做小插件
- 给eclipse 做个日历的插件
- Eclipse中使用JUnit插件做单元测试
- VB做IE插件1 BHO
- vim做一个shell编辑器插件安装
- 做一个WordPress的Picasa插件
- 做VS2010插件的入门体验(C++)
- 自做网站 jquery 插件 使用 小结
- 备忘:JavaScript和ASP.NET中处理url中文参数
- 探索JAR文件格式的强大功能
- 微软又花钱解决Vista的形象问题
- 百度空间文章清单
- asp.net性能的技巧
- 做插件!
- 一个项目,两位经理
- web开发平台之研究
- Symbol-level Network Coding for Wireless Mesh Networks
- 从ASP.NET服务器控件插入客户端脚本
- 关于Jboss版本的问题!
- Linq学习笔记2(查询操作)
- 理解.NET中的数据库连接池
- 转一个新闻。我认为这个有可能是真的