Вы можете сделать это через WMI, если сможете выбрать _InstanceCreationEvent и _InstanceDeletionEvent для класса Win32_PhysicalMemory .
Здесь приведен пример кода (WMI удобен для использования в C или C ++, извините - C # будет проще). Просто сделайте запрос, который вы слушаете, используя Win32_PhysicalMemory
вместо Win32_Process
здесь:
hres = pSvc->ExecNotificationQueryAsync(
_bstr_t("WQL"),
_bstr_t("SELECT * "
"FROM __InstanceCreationEvent WITHIN 1 "
"WHERE TargetInstance ISA 'Win32_Process'"),
WBEM_FLAG_SEND_STATUS,
NULL,
pStubSink);
Вам также потребуется второй звонок, подобный этому, для обнаружения __InstanceDeletionEvent
.