百度百科上的介绍资料不错,可以先看看.http://baike.baidu.com/view/2899.htm?fromId=21938
SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。
SNMP++是HP公司开发的一套用于SNMP编程的C++开源库,提供了简单易用的接口,被广泛使用于网络管理的开发。
随着互联网的快速发展,网络规模和数量将空前增大,网络的监控和管理将是一个挑战。简单网络管理协议是目前网络中应用最广泛的管理协议,SNMP++是HP公司开发的一套用于SNMP编程的C++开源库,提供了简单易用的接口,被广泛使用于网络管理的开发。在详细了解SNMP协议、编码规则和报文格式的基础上,详细分析SNMP++中报文收发处理过程。在报文传输过程中使用I/O复用技术和超时重传机制,提高了效率和可靠性。通过对开发包的分析,可以更好地利用SNMP++类库进行跨平台的移植和进一步的开发,满足新的网络管理需求。
SNMP++在vs2008下的编译2010-04-30 23:08这个是futuredreamer自己写的哦,有什么问题请包涵,还是初学的菜鸟~
项目要做SNMP的网络管理软件,用C++开发,在网上查了些资料,决定用snmp++开发包来做。我用的环境是vs2008,在网上基本就没找到资料,查了很多在vc6.0下编译的,发现大家也都有很多问题,我自己就试了很久才成功,怕之后忘了,来记录下来~~
是在这篇文章的基础上做的http://blog.sina.com.cn/s/blog_56f098eb0100099i.html,http://blog.sina.com.cn/s/blog_56f098eb0100099j.html,谢谢~
1.下载
在官网http://www.agentpp.com/上下载,我是按上文都下载下来的,虽然后来操作的时候发现并没完全用到,不过我还是忠实的根据我成功的过程写吧
LIBDES-l-4.01a 解压后为libdes文件夹
LibTomCrypt v1.17 (这个没用到)解压后为crypt文件夹
SNMP++v3.2.24 解压后为snmp++文件夹
MS VC++7.0 Project Files (这个也没用到)解压后为msvc文件夹
按上文中的说法“经过一系列的解压缩后,我们要形成一个文件夹,名为snmp++,里面至少要包括以上目录include、src、libdes,目录的结构如下:”
这里,我以SNMP++v3.2.24 解压后的snmp++文件夹为主要的目录进行操作,先把libdes文件夹拷贝到snmp++文件夹中,再把snmp++\include\snmp_pp中的.h文件拷贝出来,放到snmp++\include\路径下;此外,还有一个上文特别提到的步骤,即把刚刚拷贝的那些.h文件再拷贝一份到snmp++\目录下。
这块大家可能会觉得很乱,我附图2张,清晰一点。
2.然后就要在Vs2008中编译生成snmp_pp.lib文件,基本就是按照引文做的,可以参照着看,但是由于不是vc6.0,所以有一点不同,操作步骤如下:
(1)在vs2008开发环境下,选择“File”->“New”->"Project"项,在弹出的窗口中选择“Visual C++”树形菜单,其中的"Win32",在右边的窗口选择Win32 Project,工程名为“snmp_pp”,如图所示。
(2)点OK后在新的窗口点Next>,在Application type中选择Static library,如图,点击Finish即可。
(3)在工作区内,为工程添加解压缩后的所有源文件(即snmp++\src目录下的所有后缀为CPP的文件,如图所示,这里添加方法是右击树形列表中的Source Files,在弹出的菜单中选择"Add"->"Existing Item",然后找到你存放snmp++的地方。
(4)按引文所说,为了让编译的链接库支持SNMPV3,要把snmp++\libdes目录下的c文件也添加到Source Files里,这里就不放图了,和上一步方法一样。
(5)用同样的方法,把snmp++\include目录下所有后缀为h的文件,以及snmp++\libdes目录下的h文件添加到Header Files中
(6)文件添加完后,设置工程编译环境。主菜单选"Project”->"Properties"项,弹出的窗口中,按照下图进行设置
/MT
(7)由于加入了c文件,需要更改预编译选项,还在同一个窗口中,换到Precompiled Headers的设置中,如图
/no use Precompiled Headers
(8)目录设置。主菜单“Tools”->“Options…”项,弹出的窗口中,按图所示进行操作,添加SNMP++头文件所在的目录snmp++\include,还有snmp++\src,snmp++\libdes
(9)选择“Build”->“Build Solution”项,生成静态链接库文件snmp_pp.lib,我生成的文件放在D:\My Documents\Visual Studio 2008\Projects\snmp_pp\Debug中。
(10)将生成的静态链接库文件snmp_pp.lib直接复制到Vs2008安装目录:C:\Program Files\Microsoft Visual Studio 9.0\VC\Lib中去,就可以像使用VC自带的其他库文件一样使用它了。
刚做到这一步了,后面的使用就是明天的工作了55