|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
|
Отслеживание запуска процессов в реальном времени13.07.2021, 18:52. Показов 7080. Ответов 41
Здравствуйте!
Пишу программу, которая будет отображать историю запуска/закрытия процессов ПК в реальном времени. Как можно сделать это отслеживание не при запуске программы а на момент запуска/закрытия процесса, и как узнать имя запущенного или закрытого процесса?
0
|
|
| 13.07.2021, 18:52 | |
|
Ответы с готовыми решениями:
41
Смоделировать систему, указанную в варианте, в реальном времени (или, по желанию, и в реальном, и при помощи квантования времени |
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||
| 16.07.2021, 12:13 [ТС] | ||
|
Основная задумка в том, чтобы пользователи могли дополнять свои диалоги и фразы к разным процессам.
0
|
||
|
|
|||
| 16.07.2021, 12:24 | |||
|
С каждым новым процессом файл считывается заново, поэтому добавлять можно прям в процессе работы программы. Мне просто немного не понятна связка диалог + фраза к нему, т.е. что и как выбирается и по каким критериям. Добавлено через 2 минуты
0
|
|||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||
| 16.07.2021, 12:59 [ТС] | ||
|
Есть файл с списком диалогов к процессам. В каждый диалог состоит из фраз(от одной до до 10). Как это должно работать: 1. Запустили процесс chrome.exe 2. Нашли набор диалогов для этого процесса 3. Берём случайный диалог из найденого набора 4. Показываем каждую фразу из случайного диалога по очереди.
0
|
||
|
|
||
| 16.07.2021, 13:10 | ||
|
Например, отловили процесс "chrome". Показываем случайный диалог "Запущен хром!". Данный диалог состоит из двух слов. Может быть их вы относите к "фразам" ?
0
|
||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||
| 16.07.2021, 13:29 [ТС] | ||
|
Диалог - набор фраз. фраза - набор слов. мне нужно выбрать случайный диалог, и показать все его фразы.
0
|
||
|
|
|||||||
| 16.07.2021, 14:01 | |||||||
|
Если я правильно понял, то вы хотите конструкцию подобную этой:
Даже если этот конструктив хранить (добавлять) в текстовом файле, думаю, не все пользователи так легко и без ошибок смогут это сделать, не нарушив при этом структуру. XML для этого лучше всего подойдет.
0
|
|||||||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||||
| 16.07.2021, 14:56 [ТС] | ||||
|
0
|
||||
|
|
|||||||||||
| 16.07.2021, 18:40 | |||||||||||
|
Собственно, держите:
Файл с диалогами и фразами: Кликните здесь для просмотра всего текста
Здесь, [ххххх] - это процессы, <ххххх> - диалоги. Просто строки - это фразы. Код c#: Кликните здесь для просмотра всего текста
Комментариев в коде должно быть достаточно для понимания происходящего. Ну, и собственно результат: https://www.cyberforum.ru/atta... 1626449917
0
|
|||||||||||
|
|
||||||
| 16.07.2021, 19:08 | ||||||
|
P.S.
Файл с диалогами и фразами я создал программно. Разумеется, названия процессов, диалогов и фраз может быть любым. Нужно лишь придерживаться следующей схемы: [имя_процесса_1] <диалог_1> фраза 1 фраза 2 ... <диалог_2> фраза 1 фраза 2 ... [имя_процесса_2] и т.д. Добавлено через 13 минут P.S.S. Обнаружил небольшой "косячок": Обратите внимание, после строки на скриншоте
Это произошло из-за того, что в список фраз этого диалога затесалась пустая строка из файла, следующая сразу после последней фразы. Попробуйте самостоятельно избавится от этого бага
0
|
||||||
|
|
||||||
| 17.07.2021, 13:16 | ||||||
|
Вот вам для затравки - продвинутый вариант:
Кликните здесь для просмотра всего текста
Файл с диалогами тот же, что и в предыдущем посте.
1
|
||||||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||
| 17.07.2021, 13:40 [ТС] | ||
|
Я просто использую WPF, и мне нужно, чтобы текстовое поле показало фразы, и очистилось. А с циклом оно бесконечно отображает даже в окне "вывод" Попытка удалить while и continue сотворяет ошибку System.ArgumentOutOfRangeException при запуске процесса, который не состоит в файле:
0
|
||
|
1485 / 939 / 455
Регистрация: 06.02.2012
Сообщений: 2,870
|
||||||||||||||||
| 17.07.2021, 13:54 | ||||||||||||||||
|
SAn4Es_2005,
0
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||||||
| 17.07.2021, 14:47 [ТС] | ||||||
|
Всё, я нашёл решение:
Я просто перед выводом диалога поставил проверку на пустой список:
0
|
||||||
|
|
||
| 17.07.2021, 15:03 | ||
|
Для оконных приложений и тем более WPF концепция меняется, и там while( true ) вообще не нужен. Если вкратце, то все что находится внутри этого цикла вы должны запихнуть в свой метод или событие.. не знаю что там у вас.
0
|
||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||
| 17.07.2021, 15:40 [ТС] | ||
|
wizard41, Вернусь к исходному вопросу(вы уж извините
).Мне нужно узнать именно процесс, а не подпроцессы(как вкладки в хроме). Через System.Diagnostics.Process.ProcessName можно то, что мне нужно. Но как понять, что процесс запущен? Имя запускаемого процесса заранее предсказать невозможно
0
|
||
|
|
|||
| 17.07.2021, 15:53 | |||
|
На счет вкладок - если есть хоть один из процессов chrome - значит процесс запущен.
Добавлено через 4 минуты А по хорошему, все что связано с выяснением текущих процессов вам надо бы оформить в виде сервиса и засунуть в трей. Пусть он там сидит и мониторит процессы. При появлении "нужных" процессов - отсылает его ID, Name и прочее уже оконному приложению.
0
|
|||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
|||
| 17.07.2021, 15:54 [ТС] | |||
|
Есть ли какое-то событие, по типу: "Когда запустился какой-то процесс, узнать его имя и вывести диалог"
0
|
|||
|
|
|||
| 17.07.2021, 16:00 | |||
|
Добавлено через 1 минуту
Добавлено через 1 минуту Показывайте BallonTip в трее со своими фразами да и все.
0
|
|||
|
0 / 0 / 0
Регистрация: 10.03.2019
Сообщений: 319
|
||||||
| 17.07.2021, 16:30 [ТС] | ||||||
|
wizard41, смог отследить запуск процессов таким способом
0
|
||||||
| 17.07.2021, 16:30 | |
|
Задание:Смоделировать систему, указанную в варианте, в реальном времени (или, по желанию, и в реальном, и при помощи квантования времени) и провести
отслеживание процессов
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|