vc6实现监控程序内存使用情况

1、测试部署程序的时候,经常要监控开发程序的内存使用情况,一直盯着太累,使用操作系统提供的内存监控,又不会使用。。。

2、在win7下,要看提交内存的占用大小;在server下,要看虚拟内存占用大小;

至于为什么建议问下度娘,这只是本人的看法

Release目录下有可执行程序,可以不需要安装vc6编译,但需要vc的runtime

3、vc6完整工程代码下载地址 (代码有debug,下载后按照后续内容替换)

4、欢迎大家评论



问题

2017年7月26日10:09:02

在vc6编译器中,调试正常,运行可执行程序时,打开system进程时,无法打开
原因:服务方式程序时,程序的创建者为SYSTEM用户;非SYSTEM用户调用OpenProcess访问该服务程序时,调用失败,GetLastError返回5。需要提升权限,

由于csdn上传的资源不能删除。所以整理贴出更新文件的内容。下载csdn资源后,打开对应的文件,使用下面的内容进行全部替换即可

// RecordMemUsedDlg.h : header file
//

#if !defined(AFX_RECORDMEMUSEDDLG_H__175975E3_C7A4_4D57_8F22_6673EE9E8DDC__INCLUDED_)
#define AFX_RECORDMEMUSEDDLG_H__175975E3_C7A4_4D57_8F22_6673EE9E8DDC__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/
// CRecordMemUsedDlg dialog
#include <fstream>
using namespace std;
class CRecordMemUsedDlg : public CDialog
{
// Construction
public:
	CRecordMemUsedDlg(CWnd* pParent = NULL);	// standard constructor
	void GetSystemUsed();
	BOOL GetMemoryUsed(unsigned iPID);
	void PutPutFile();
	void stopTimer();
	void startTimer();
	bool AdjustPrivileges();//提权
	ofstream m_ofile; //定义输出文件
// Dialog Data
	//{
  {AFX_DATA(CRecordMemUsedDlg)
	enum { IDD = IDD_RECORDMEMUSED_DIALOG };
	int m_iTotalMemory; //保存内存 M
	int m_iUsedMemory; 	//保存已使用内存M
	UINT	m_iPID;
	int	m_WorkingSetSize;//进程使用的内存
	int m_PagefileUsage;//虚拟内存()
	int m_QuotaPagedPoolUsage;//使用页面缓存池
	int m_QuotaNonPagedPoolUsage;//使用非页面缓存池	
	
	UINT	m_iSpan;
	unsigned  TIMERID;//Timer ID
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{
  {AFX_VIRTUAL(CRecordMemUsedDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值