3 / 3 / 0
Регистрация: 02.05.2010
Сообщений: 6
|
|
1 | |
Проверка, запущена ли программа (служба) + чтение памяти процесса10.05.2010, 19:36. Показов 4533. Ответов 3
Метки нет (Все метки)
Доброго времени суток.
Спасибо всем кто, смотрели мою предыдущую тему. (спасибо нажал в ответ) первая часть темы Есть служба (назовем ее serv), и она время от времени падает с ошибкой (когда заходишь через терминал, получаешь окно ошибки при входе) Для автоматического перезапуска serv, разрабатываю вторую службу (назовем ее serv_restarter). Так вот, программа serv_restarter должна наблюдать за активностью, нахождением в списке процессов программы serv через определенное время, (для этого есть const int Time_Check = 300) и при отсутствии serv, запускать службу serv. Вопросы: 1) как получить список активных процессов? 2) как управлять службами (в данном случае, запустить serv) вопрос по второй части темы: Имея список процессов, как прочитать определенный адрес памяти этого процесса? Или всетаки я изначально не прав в том, что можно читать только адреса памяти, а не память процесса? Поясню на примере. Есть запущенный процесс serv. В памяти которого есть переменные, где находится текущее число запущенных игр, описание их и прочих параметров. Для их просмотра можно непосредственно подключаться к процессу serv через телнет, но я желаю читать напрямую через стороннюю программу, которая будет напрямую обращаться к памяти serv.exe Есть конечно вариант эмулировать соединение, на php такое делал. Вопрос 3) как прочитать память запущенной программы. Зараннее спасибо.
0
|
10.05.2010, 19:36 | |
Ответы с готовыми решениями:
3
Проверка и чтение памяти процесса Проверка запущена ли служба Проверка, запущена служба или нет Запуск скрипта в определенное время и проверка, запущена ли служба |
146 / 118 / 8
Регистрация: 09.03.2010
Сообщений: 150
|
||||||
10.05.2010, 20:56 | 2 | |||||
Список процессов я вот так получал
Process.Start("notepad++.exe"); есть там в System.Diagnostics кстати и каллбеки на событие завершения процесса.
1
|
3 / 3 / 0
Регистрация: 02.05.2010
Сообщений: 6
|
|
12.05.2010, 10:48 [ТС] | 3 |
А по второму пункту кто-нить может объяснить или подсказать в каком направлении стоит копать?
0
|
8 / 8 / 2
Регистрация: 27.04.2010
Сообщений: 11
|
|
12.05.2010, 14:39 | 4 |
думаю ты изначально ошибся в выборе языка программирования
C# не предназначен для работы с памятью напрямую. посмотри в MSDN -> memory management functions, они предназначены для C++ но можно унаследовать код.
1
|
12.05.2010, 14:39 | |
12.05.2010, 14:39 | |
Помогаю со студенческими работами здесь
4
Чтение памяти другого процесса по таймеру: нужно ли закрывать хэндл процесса? Проверка запущена ли другая программа Проверка, запущена ли программа со съемного носителя Проверка, с какими правами запущена программа Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |