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;
}
或者
欢迎转帖 请保持文本完整并注明出处
技术博客 http://www.cnblogs.com/itdef/
B站算法视频题解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
欢迎c c++ 算法爱好者 windows驱动爱好者 服务器程序员沟通交流
如果觉得不错,欢迎点赞,你的鼓励就是我的动力