由云台协议DLL浅谈插件程序的编写(下)【原创】
2004-12-25 13:17
459 查看
由云台协议DLL浅谈插件程序的编写(下)【原创】
1.创建项目,“Visual C++项目”--->“Win32”--->“Win32 项目”--->“DLL”,选中“导出符号”,(VS2003平台),按源码目录组织规范设置项目,参考我的blog 2004.12其中文章。
2.添加链接库导出定义文件:****.def,加入到项目中。
; ptzPelco-D.def : 声明 DLL 的模块参数。
LIBRARY "ptzPelco-D"
EXPORTS
; 此处可以是显式导出
CreatePTZInstance PRIVATE
ProtocolNames DATA
说明:上面分别是导出变量和导出函数。
3.把工程默认的导出变量和导出函数删除,默认导出的类也删除(头文件可删空)。
4.在DllMain所在的cpp文件添加定义:
const char * ProtocolNames[] =
{
"PELCO-D",
"PELCO-P",
0 // 必须以0表示结束
};
CPTZInterface * __stdcall CreatePTZInstance(const char * pszProtocolsName)
{
if (0 == strcmp(pszProtocolsName, ProtocolNames[0]))
{
return new CPelco_D; // 看下面的定义!
}
if (0 == strcmp(pszProtocolsName, ProtocolNames[1]))
{
return new CPelco_P; // 看下面的定义!
}
return 0;
}
5.从接口派生出一个类,定义如下:
class CPelco_P: public CPTZInterface { …… }
注意上面的CreatePTZInstance函数,这样就达到了创建这个协议对象的目的了。
6.说明:创建的对象用该类的Destroy()销毁,由使用者调用。
7.转载请保留完整文档,天衣有缝原创,2004.12.24凌晨0:05,深圳南山科技园
1.创建项目,“Visual C++项目”--->“Win32”--->“Win32 项目”--->“DLL”,选中“导出符号”,(VS2003平台),按源码目录组织规范设置项目,参考我的blog 2004.12其中文章。
2.添加链接库导出定义文件:****.def,加入到项目中。
; ptzPelco-D.def : 声明 DLL 的模块参数。
LIBRARY "ptzPelco-D"
EXPORTS
; 此处可以是显式导出
CreatePTZInstance PRIVATE
ProtocolNames DATA
说明:上面分别是导出变量和导出函数。
3.把工程默认的导出变量和导出函数删除,默认导出的类也删除(头文件可删空)。
4.在DllMain所在的cpp文件添加定义:
const char * ProtocolNames[] =
{
"PELCO-D",
"PELCO-P",
0 // 必须以0表示结束
};
CPTZInterface * __stdcall CreatePTZInstance(const char * pszProtocolsName)
{
if (0 == strcmp(pszProtocolsName, ProtocolNames[0]))
{
return new CPelco_D; // 看下面的定义!
}
if (0 == strcmp(pszProtocolsName, ProtocolNames[1]))
{
return new CPelco_P; // 看下面的定义!
}
return 0;
}
5.从接口派生出一个类,定义如下:
class CPelco_P: public CPTZInterface { …… }
注意上面的CreatePTZInstance函数,这样就达到了创建这个协议对象的目的了。
6.说明:创建的对象用该类的Destroy()销毁,由使用者调用。
7.转载请保留完整文档,天衣有缝原创,2004.12.24凌晨0:05,深圳南山科技园
相关文章推荐
- 由云台协议DLL浅谈插件程序的编写(上)【原创】
- 由云台协议DLL浅谈插件程序的编写 .
- 由云台协议DLL浅谈插件程序的编写 转
- 在QT下编写带DLL的程序(二)
- c#程序调用c++编写dll需要注意问题
- 为 Linux 应用程序编写 DLL(在仅仅只会编写插件的时候为什么要编写整个应用程序?)
- [原创]使用Visual Studio .NET编写纯C程序的提示
- 浅谈浏览器插件检测 和自定义协议的支持
- 【原创】win32 c++编写系统服务程序
- C#调用C++程序编写的dll
- QT编写DLL给外部程序调用,提供VC/C#/C调用示例(含事件)
- 使用Lua脚本为wireshark编写自定义通信协议解析器插件
- 使用lua脚本编写wireshark协议插件
- 基于UDP协议的简单基本视频传输程序的编写
- 使用Lua脚本为wireshark编写自定义通信协议解析器插件
- lesson 11:. 使用UDP协议编写一个网络程序,设置接收端程序的监听端口是8001,发送端发送的数据是“Hello, world”。
- 关于缓存:编写ASP程序必读 (原创)
- 使用python编写udp协议的ping程序
- 用QT在Windows下编写dll程序