Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.76/33: Рейтинг темы: голосов - 33, средняя оценка - 4.76
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634

Монитор Ресурсов

26.02.2019, 18:03. Показов 7080. Ответов 58
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Будучи счастливым обладателем небольшого сервера задался вопросом, а что же грузит сервер ночью. Вашему вниманию программа монитор ресурсов: Изначально ReS_MoN задумывалась как программа, которая будет информировать о процессах, которые избыточно потребляют ресурсы на сервере. С возможностью отправки уведомлений на различные сервисы.


Возможности:
1. Отправка отчетов на почту при превышения порогов потребления ресурсов;
2. Отправка отчетов на FTP при превышения порогов потребления ресурсов;;
3. Куча всего другого;
3. Поддержка оси Win 7/8/8.1/10 (для трех последних нужна права админа);
4. Авто обновление, отправка статистики на почту (FTP);
5. Логи, Ини и тд.

Проект не закончен. Руки не доходят дописать для MEM и HDD. Если кто то желаем помочь, пожалуйста исходники в комплекте..На сегодня работает довольно таки стабильно.

Отдельная благодарность за помощь Dragokas
Миниатюры
Монитор Ресурсов   Монитор Ресурсов  
Вложения
Тип файла: 7z pack_Source.7z (93.4 Кб, 12 просмотров)
Тип файла: 7z pack_Bin.7z (1.87 Мб, 15 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.02.2019, 18:03
Ответы с готовыми решениями:

Графический монитор ресурсов
Здравствуйте, господа. Скажите, а как реализовать в своей программе мониторинг загрузки ЦП в виде графика?

поделитесь мыслями (монитор ресурсов)
Получил задание по курсовой написать программу монитор основных параметров системы. к примеру темп.проца и т.д Размещается в трее как...

Поделитесь мыслями (монитор ресурсов)
Получил задание по курсовой написать программу монитор основных параметров системы. к примеру темп.проца и т.д Размещается в трее как...

58
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
26.02.2019, 20:06
Запускал из исходников.
Не работает. Загрузка проца всегда 0

И ещё. Пароли и логины от почты и FTP в открытом виде указаны, это так задумано?
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
27.02.2019, 00:02  [ТС]
У вас семерка?
Странно на 10ке все ок
Это публичные ресурсы....
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
27.02.2019, 00:08  [ТС]
Win 10 (10.0.17134.590)
Миниатюры
Монитор Ресурсов  
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
27.02.2019, 17:43  [ТС]
Обновление от 27/02/2019
https://drive.google.com/open?... Hm_o_TV2Nm
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
01.03.2019, 11:53  [ТС]
Обновление от 01/03/2019
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
05.03.2019, 16:35  [ТС]
Всем привет!
Буду признателен за помощь в реализации подобных скриптов (кода) для определения текущего состояния памяти (каждым процессом). И "нагрузки" на HDD каждым процессом...

Добавлено через 26 минут
Обновление от 05/03/2019
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
06.03.2019, 05:32
Цитата Сообщение от kreotodr Посмотреть сообщение
текущего состояния памяти (каждым процессом)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Declare Function GetProcessMemoryInfo Lib "PSAPI.DLL" (ByVal hProcess As Long, ppsmemCounters As PROCESS_MEMORY_COUNTERS, ByVal cb As Long) As Long
Private Declare Function OpenProcess Lib "Kernel32.dll" (ByVal dwDesiredAccessas As Long, ByVal bInheritHandle As Long, ByVal dwProcId As Long) As Long
Private Type PROCESS_MEMORY_COUNTERS
    cb As Long
    PageFaultCount As Long
    PeakWorkingSetSize As Long
    WorkingSetSize As Long
    QuotaPeakPagedPoolUsage As Long
    QuotaPagedPoolUsage As Long
    QuotaPeakNonPagedPoolUsage As Long
    QuotaNonPagedPoolUsage As Long
    PagefileUsage As Long
    PeakPagefileUsage As Long
End Type
Const PROCESS_QUERY_INFORMATION = 1024
Const PROCESS_VM_READ = 16
Function GetProcessWorkingSetSize(ByVal pid As Long) As Long
Dim pmc As PROCESS_MEMORY_COUNTERS
Dim lngHwndProcess As Long, lret As Long
 
pid = Val(Text1.Text) '4816
'Get a handle to the Process and Open
lngHwndProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, pid)
 
 'Get the Site of the Memory Structure
 pmc.cb = LenB(pmc)
 
 lret = GetProcessMemoryInfo(lngHwndProcess, pmc, pmc.cb)
 GetProcessWorkingSetSize = pmc.WorkingSetSize / 1024
End Function
 
 
Private Sub Command1_Click()
Dim pid As Long
pid = Val(Text1.Text) ' в текстовом поле надо записать PID процесса из диспетчера задач
 
MsgBox GetProcessWorkingSetSize(pid) & " K"
End Sub
Для теста надо руками прописать PID работающего процесса.
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
06.03.2019, 10:04
Лучший ответ Сообщение было отмечено kreotodr как решение

Решение

https://www.cyberforum.ru/blog... g2134.html
1
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
15.03.2019, 07:28  [ТС]
Обновление от 15/03/19
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
19.03.2019, 05:01  [ТС]
Цитата Сообщение от The trick Посмотреть сообщение
https://www.cyberforum.ru/blogs/354370/blog2134.html
Осталось совсем чуток..
реализовать тоже для HDD....

Добавлено через 4 минуты
Цитата Сообщение от The trick Посмотреть сообщение
https://www.cyberforum.ru/blogs/354370/blog2134.html
Анатолий у Вас случайно нет подобной реализации для CPU?
Сейчас все реализовано через этот скрипт Полезные VBS скрипты и программы по работе с ними
Но он иногда крашится
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
19.03.2019, 12:34  [ТС]
Обновление от 19/03/19 {build 1.0411}
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
19.03.2019, 13:18
Цитата Сообщение от kreotodr Посмотреть сообщение
Обновление от 19/03/19 {build 1.0411}
Вы или исходники тут выкладывайте, если бинарник только, то в другом разделе.
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
20.03.2019, 16:33  [ТС]
Обновление от 20/03/19 BIN@Source {build 1.0416}
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
25.03.2019, 08:31  [ТС]
Обновление от 25/03/19 BIN@Source {build 1.0471}
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
26.03.2019, 18:04  [ТС]
И снова всем привет!
дошли руки до раздела HDD

С помощью:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
    On Error Resume Next
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_PerfFormattedData_PerfProc_Process", , 48)
    
    For Each objItem In colItems
        Debug.Print "Name: " & objItem.Name
        Debug.Print "IDProcess: " & objItem.IDProcess
        Debug.Print "IOWriteBytesPersec: " & (objItem.IOWriteBytesPersec) / 1024
        Debug.Print "IOWriteOperationsPersec: " & (objItem.IOWriteOperationsPersec) / 1024
    Next
Получаю скорость вывода-вывода данных в кБ для процесса.

Суть вопроса, а как понять максимум, на что способно оборудование (SSD/HDD) и исходя из этого получить % использования ресурса (SSD/HDD) процессом?
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
27.03.2019, 07:25
Цитата Сообщение от kreotodr Посмотреть сообщение
на что способно оборудование (SSD/HDD)
Во первых, накопителей может быть несколько и с разными характеристиками, а код их не персонализирует.
А главное, что IOWriteBytesPerSec подсчитывает все операции ввода-вывода, сгенерированные процессом, включая операции ввода-вывода с файлами, сетью и любыми другими устройствами, а не только накопители.
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
27.03.2019, 07:38  [ТС]
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Во первых, накопителей может быть несколько и с разными характеристиками, а код их не персонализирует.
А главное, что IOWriteBytesPerSec подсчитывает все операции ввода-вывода, сгенерированные процессом, включая операции ввода-вывода с файлами, сетью и любыми другими устройствами, а не только накопители.
Возможно есть иной путь? Так как определить кто куда "пишет" довольно хлопотно...
0
39 / 39 / 8
Регистрация: 15.08.2014
Сообщений: 634
02.02.2020, 10:00  [ТС]
Цитата Сообщение от The trick Посмотреть сообщение
https://www.cyberforum.ru/blogs/354370/blog2134.html
Добрый день Анаталий!
Спустя много времени, пример понадобился.
И обнаружил, что он работает не корректно..
Скрин во вложении...
Миниатюры
Монитор Ресурсов  
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
04.02.2020, 10:15
Цитата Сообщение от kreotodr Посмотреть сообщение
И обнаружил, что он работает не корректно..
Да, он только под 32 бита рассчитан. ProcessExplorer в свою очередь в ресурсах содержит 64 битную версию, которая извлекается и запускается в случае запуска на 64 битной системе.
Я знаю способ исправить, на днях исправлю.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.02.2020, 10:15
Помогаю со студенческими работами здесь

Монитор ресурсов показывает 100% максимальной частоты ЦП.
Всем огромный респектище и добрый день У меня есть проблема, и ее решение я не смог найти. Проблема заключается в том, что по какой-то...

Показывает ли Монитор ресурсов адекватное распределение памяти и загрузку ЦП
Показывает ли Монитор ресурсов(ДиспетчерЗадач\Быстродействие) адекватное - распределение памяти и загрузку ЦП? или лучше оставить ДЗ для...

Какой код нужен что-бы открыть монитор ресурсов в .bat файле
Какая команда нужна чтобы открыть монитор ресурсов? (нужен для моего меню) Буду рад.

Монитор ресурсов resmon.exe показывает малое, но бесконечное использование System жёсткого диска
Монитор ресурсов resmon.exe показывает малое, но бесконечное использование System жёсткого диска Что разрушает жёсткий диск. ...

При включении ноутбука гаснет монитор. Но работает монитор в безопасном режиме
Здравствуйте. Столкнулся с такой проблемой на ноутбуке ASUS X750L. Монитор при включении ноутбука гаснет и начинает мигать, сам ноутбук...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru