windows 性能监控之VC编译snmp

 

标 题: windows 性能监控之VC编译snmp
作 者: itdef
链 接: http://www.cnblogs.com/itdef/p/4003599.html 

欢迎转帖 请保持文本完整并注明出处

 

windows性能监控可以使用如下几种方法:

一、自己C++调用APi 。获取诸如 1、进程的空闲及计算时间对比计算CPU占用率 2、磁盘空闲率 3、遍历进程各种信息 4注册表查询安装软件等。这个之前在 《ProcessHacker学习笔记》 http://www.cnblogs.com/itdef/p/3759970.html 已经讲过 

二、调用WMI。这个之前的我一系列文章(http://www.cnblogs.com/itdef/p/3990541.html《主机性能监控之wmi 获取磁盘信息》...)也介绍过。

三、使用snmp.这个协议可以作为windows服务,也就是说可以不用在windows下安装额外软件,并且LINUX也支持SNMP协议。以后考虑写一个开源性能监控软件,支持两种平台的性能监控。

这里先谈谈VC下编译SNMP库

网络上有本《Visual C++开发基于SNMP的网络管理软件(第2版)》

武孟军.2009年.人民邮电出版社 可以值得参考 但是其编译过程讲的很模糊 

初次接触很容易卡住 而无法进行后继的学习

首先去http://www.agentpp.com/snmp_pp3_x/download_snmp_ppv3/download_snmp_ppv3.html

下载需要的代码

我使用的是VS2008

下载snmp++v3.2.25.tar.gz

下载msvc7.zip

下载libdes-l-4.01a.tar.gz

SNMP 版本分为 v1 v2 v3

不编译 v3的话 可以不下载libdes-l-4.01a.tar.gz

解压msvc7.zip

将其余的两个包解压后的snmp++文件夹和libdes文件夹放入msvc7文件夹下

也就是说 msvc7.zip解压后的msvc7文件夹应该有以下三个文件夹 " snmp++文件夹 libdes文件夹 msvc7文件夹" 

注意名字和文件夹次序 官网下载 MS VC7的工程路径都定死的

进入MSVC文件夹 因为我们是编译LIB 所以使用vs2008打开staticLIB.sln

界面如图:

 

这里我们将其余未用到的项目(未下载) 卸载或者删除

编译 应该就没问题了

 

其余的话  如果用过BOOST或者其他库的朋友 应该就没有任何问题了

在VS2008下设置库的路径和头文件的目录

工具-》选项-》项目和解决方案-》vc++目录

//===================================================

编译设置到此结束

我们来一个简单代码测试一下

VS2008 新建一个命令行程序

项目->属性->链接器->输入->附加依赖项目添加

snmp++.lib libdes.lib ws2_32.lib

如图

代码如下:

#include "stdafx.h"
#include "snmp_pp.h"

int _tmain(int argc, _TCHAR* argv[])
{
Oid o1("1.3.6.1.2.1.7.1");
printf(o1.get_printable());
return 0;
}

或者

 

posted on 2014-10-01 21:32  itdef  阅读(872)  评论(0编辑  收藏  举报

导航