资源简介
主机配置信息 主机名,IP,DNS,CPU信息,本进程CPU使用率/主机CPU使用率,本进程内存使用量/主机内存使用量/内存总量,各硬盘的使用量/总量 -- 都能获取,貌似server 2008 上获取本进程CPU使用率有问题
代码片段和文件信息
#include “StdAfx.h“
#include “SendInfModule.h“
#include
//获取DNS的IP
#include
#pragma comment(lib “IPHLPAPI.lib“)
//获取ip hostname
#include “WinSock2.h“
#pragma comment(lib “Ws2_32.lib“)
//获取 cpu 利用率
#include
#pragma comment(lib “pdh.lib“)
//获取 内存
#include
#pragma comment(lib “Psapi.lib“)
#define WORKING_BUFFER_SIZE 15000
#define MAX_TRIES 3
#define MALLOC(x) HeapAlloc(GetProcessHeap() 0 (x))
#define FREE(x) HeapFree(GetProcessHeap() 0 (x))
CClientInf::CClientInf()
{
}
CClientInf::~CClientInf()
{
WSACleanup();
}
BOOL CClientInf::GetHostName(CString & strHostName CString & strIP)
{
char host[128];
PHOSTENT hostinfo;
WSADATA wsaData;
int iResult = WSAStartup(MAKEWORD(22) &wsaData);
if (iResult != NO_ERROR) return FALSE;
if(gethostname (host 128) == 0)
{
if((hostinfo = gethostbyname(host)) != NULL)
{
strIP = inet_ntoa(*(struct in_addr*)*hostinfo->h_addr_list);
strHostName = host;
return TRUE;
}
}
return FALSE;
}
BOOL CClientInf::GetDNS(CString & strDNS)
{
DWORD dwRetVal = 0;
ULONG flags = GAA_FLAG_INCLUDE_PREFIX;
ULONG family = AF_INET;
PIP_ADAPTER_ADDRESSES pAddresses = NULL;
ULONG outBufLen = WORKING_BUFFER_SIZE;
ULONG Iterations = 0;
do {
pAddresses = (IP_ADAPTER_ADDRESSES *)MALLOC(outBufLen);
if (pAddresses == NULL) {
return FALSE;
}
dwRetVal = GetAdaptersAddresses(family flags NULL pAddresses &outBufLen);
if (dwRetVal == ERROR_BUFFER_OVERFLOW) {
FREE(pAddresses);
pAddresses = NULL;
} else {
break;
}
Iterations++;
} while ((dwRetVal==ERROR_BUFFER_OVERFLOW) && (Iterations
if (dwRetVal == NO_ERROR && pAddresses->FirstDnsServerAddress!=NULL) {
sockaddr_in DNSAddr;
memcpy(&DNSAddr pAddresses->FirstDnsServerAddress->Address.lpSockaddr sizeof(SOCKADDR));
ntohl(DNSAddr.sin_addr.s_addr);
strDNS = inet_ntoa(DNSAddr.sin_addr);
}
if (pAddresses) FREE(pAddresses);
return TRUE;
}
BOOL CClientInf::GetSystemInfo(CString & strSystemInfo)
{
DWORD dwSize;
HKEY hKey;
LONG ReturnValue;
DWORD type;
BYTE strBuf[100];
strSystemInfo = _T(““);
//打开注册表
ReturnValue = RegOpenKeyExW(HKEY_LOCAL_MACHINE
L“SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion“
0
KEY_ALL_ACCESS
&hKey);
if(ReturnValue != ERROR_SUCCESS) return false;
//获取操作系统名称
LONG lReturn = RegQueryValueExW(hKey L“ProductName“ NULL \
&type (BYTE *)strBuf &dwSize);
if(lReturn == ERROR_SUCCESS)
{
strSystemInfo.AppendFormat(_T(“%s“)strBuf);
}
//获取ProductId
//dwSize = 100;
//lReturn = RegQueryValueExW(hKey L“ProductId“ NULL
// &type (BYTE *)strBuf &dwSize);
//if(lReturn != ERROR_SUCCESS) return false;
//strSystemInfo += _T(“_“);
//strSystemInfo.AppendFormat(_T(“%s“)strBuf);
//获取CurrentVersion
dwSize = 100;
lReturn = RegQueryValueExW(hKey L“CurrentVersion“ NULL
&type (BYT
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 94208 2014-04-11 17:00 systeminfo_test\Debug\systeminfo_test.exe
文件 685124 2014-04-11 17:00 systeminfo_test\Debug\systeminfo_test.ilk
文件 1264640 2014-04-11 17:00 systeminfo_test\Debug\systeminfo_test.pdb
文件 6854 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug\BuildLog.htm
文件 65 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug\mt.dep
文件 148302 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug\SendInfModule.obj
文件 12225 2014-04-11 16:59 systeminfo_test\systeminfo_test\Debug\stdafx.obj
文件 663 2014-04-11 16:59 systeminfo_test\systeminfo_test\Debug\systeminfo_test.exe.em
文件 728 2014-04-11 16:59 systeminfo_test\systeminfo_test\Debug\systeminfo_test.exe.em
文件 621 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug\systeminfo_test.exe.intermediate.manifest
文件 113108 2014-04-11 16:59 systeminfo_test\systeminfo_test\Debug\systeminfo_test.obj
文件 3211264 2014-04-11 16:59 systeminfo_test\systeminfo_test\Debug\systeminfo_test.pch
文件 814080 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug\vc90.idb
文件 544768 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug\vc90.pdb
文件 1231 2014-04-11 10:01 systeminfo_test\systeminfo_test\ReadMe.txt
文件 9305 2014-04-11 17:00 systeminfo_test\systeminfo_test\SendInfModule.cpp
文件 793 2014-04-11 16:59 systeminfo_test\systeminfo_test\SendInfModule.h
文件 220 2014-04-11 10:01 systeminfo_test\systeminfo_test\stdafx.cpp
文件 233 2014-04-11 10:01 systeminfo_test\systeminfo_test\stdafx.h
文件 503 2014-04-11 17:01 systeminfo_test\systeminfo_test\systeminfo_test.cpp
文件 4658 2014-04-11 10:03 systeminfo_test\systeminfo_test\systeminfo_test.vcproj
文件 1427 2014-04-11 17:01 systeminfo_test\systeminfo_test\systeminfo_test.vcproj.WIN-B9ISO169DSA.Administrator.user
文件 498 2014-04-11 10:01 systeminfo_test\systeminfo_test\targetver.h
文件 18385920 2014-04-11 17:01 systeminfo_test\systeminfo_test.ncb
文件 911 2014-04-11 10:01 systeminfo_test\systeminfo_test.sln
..A..H. 27136 2014-04-11 17:01 systeminfo_test\systeminfo_test.suo
目录 0 2014-04-11 17:00 systeminfo_test\systeminfo_test\Debug
目录 0 2014-04-11 16:59 systeminfo_test\Debug
目录 0 2014-04-11 17:01 systeminfo_test\systeminfo_test
目录 0 2014-04-11 16:59 systeminfo_test
............此处省略3个文件信息
相关资源
- 一个复杂的电梯调度程序
- VC获取局域网中计算机名和IP地址
- rtsp 服务器代码,VC可编译使用,RTS
- Jmeter-CPU内存监控-ServerAgent-2.2.1
- VC编写的计算机联锁源码
- MVC开发的导入导出Excel文件
- 基于MIPS指令集的32位CPU设计与Verilog语
- vc界面库集总
- DevComponents DotNetBar 和DotNetBar2
- vld内存泄漏检测工具
- 变电站操作票系统
- 中国象棋和五子棋的算法讲解和vc源代
- MVC学生管理系统代码
- emu8086.zip
- 两个吃一个棋类游戏
- springmvc+swaggerz整合项目.zip
- pdfview.ocx控件及一个小程序
- qt-vsaddin-msvc2017-2.2.2.vsix
- Visual CertExam Suite
- mvc小项目
- uvm+vcs+verdi基本平台搭建
- Spring+Spring-MVC+myBatis北大青鸟阶段项目
- vcs 2018 user guide
- 尚硅谷_-SpringMVC.docx
- 《超市订单管理系统》项目源码 My
- qt-vsaddin-msvc2017 插件
- VC图像处理代码之—数字图像工程案例
- qt-vsaddin-msvc2017-2.2.0.vsix
- Cuvc 解码器
- VCLSkin5.60破解版(含233种皮肤和皮肤制
评论
共有 条评论