1 (изменено: shnec, 2013-11-27 22:19:36)

Тема: AHK: Определение размера памяти процесса

Ув. знатоки, подскажите пожалуйста как получить размер памяти существующего процесса по его имени. (notepad.exe например)

2

Re: AHK: Определение размера памяти процесса

shnec, а что конкретно Вы понимаете под памятью процесса? Откройте диспетчер задач и уточните, какой именно столбец Вас интересует.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3 (изменено: shnec, 2013-11-27 22:33:11)

Re: AHK: Определение размера памяти процесса

Хотелось бы получать в переменную, значение из столбца "ПАМЯТЬ" (та что используемая)

4

Re: AHK: Определение размера памяти процесса

А нужна только память одного из процессов с именем notepad.exe, или всех (их ведь много может быть с одинаковым именем)?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: Определение размера памяти процесса

Память одного процесса нужна, если их несколько одинаковых, то циклом буду определять значение каждого. (В моем случае это будет только один процесс)

6

Re: AHK: Определение размера памяти процесса

ProcessName := "notepad.exe"
Processes := ComObjGet("winmgmts:").ExecQuery("Select * from Win32_Process Where Name = '" ProcessName "'")

Memory := ""
for k in Processes
   MsgBox, % Memory := k.WorkingSetSize//1024

if (Memory = "")
   MsgBox, Процесс с именем %ProcessName% не найден
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: Определение размера памяти процесса

Вот так даже лучше:

ProcessName := "notepad.exe"
if (Processes := ComObjGet("winmgmts:").ExecQuery("Select * from Win32_Process Where Name = '" ProcessName "'")).count = 0
{
   MsgBox, Процесс с именем %ProcessName% не найден
   return
}

for k in Processes
   MsgBox, % Memory := k.WorkingSetSize//1024
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

8

Re: AHK: Определение размера памяти процесса

Спасибо большое!, то что доктор прописал