Извлечение памяти хранилища и программ на .NET Compact Framework 2 и WM5 - PullRequest
2 голосов
/ 05 февраля 2010

Я уже довольно долго искал и все еще не мог найти решение для этого. Все, что мне нужно, это восстановить уровни памяти и процент использования. OpenNETCF имеет класс MemoryManagement, который, похоже, инкапсулирует структуру данных, возвращаемую через P / Invoke или что-то подобное, и дает мне TotalPhysicalMemory, TotalVirtualMemory, AvailablePhisicalMemory и тому подобное, но они не имеют прямого отношения к хранилищу и программам и не могут Я нахожу способ "преобразовать" эти атрибуты в те, которые мне нужны.

Кто-нибудь там уже делал это? Это должно быть просто, мне просто нужны те же самые значения, которые доступны в Настройках> Система> Память.

Заранее спасибо!

edit: я уже в состоянии получить доступную и общую память для хранения через GetDiskFreeSpaceEx P / Invoke. Поскольку память хранилища и программ, похоже, зависит от одного и того же оборудования, возможно, это всего лишь случай определения пути, который следует передать в качестве первого параметра метода.

1 Ответ

1 голос
/ 05 февраля 2010

Требуется класс MemoryManagement , а не класс DeviceManagement. SystemStorageMemory и SystemProgramMemory - это, вероятно, те свойства, которые вам нужны.

РЕДАКТИРОВАТЬ 1 В качестве места для хранения вы бы использовали класс DriveInfo , инициализированный в корневом каталоге устройства («\»).

...