вот прям из проекта выдрал:
( m_dwdLastMem,m_dwdLogZero - для твоих целей всегда ==0 , замени их в коде на 0 )
CString m_edMemView;
DWORD m_dwdLastMem,m_dwdLogZero;
//обновить показания
void CMemorySpyDlg::RefreshMemView()
{
MEMORYSTATUS memst;
::GlobalMemoryStatus(&memst);
CString csSign;
DWORD dwdDelta,dwdMemoryLoad;
CString csper,csmemtaken,csdelta;
if(m_dwdLastMem>=m_dwdLogZero){csSign=" ";dwdDelta=m_dwdLastMem-m_dwdLogZero;}
else{csSign="-";dwdDelta=m_dwdLogZero-m_dwdLastMem;}
m_dwdLastMem=memst.dwTotalPhys-memst.dwAvailPhys;
dwdMemoryLoad=(((float)m_dwdLastMem)*100)/((float)memst.dwTotalPhys);
//занято %
csper.Format("занято озу%3d%%\r\n",dwdMemoryLoad);
//занято байт
csmemtaken.Format(" %010d\r\n",m_dwdLastMem);
csmemtaken.Insert(7,".");
//приращение от нуля
csdelta.Format("D %1s%010d",csSign,dwdDelta);
csdelta.Insert(7,".");
m_edMemView.Format("%s%s%s",csper,csmemtaken,csdelta);
m_edMemView - искомое
}