Информация о наборе модулей процесса

Информация о наборе модулей процесса

Теперь выясним, как выполнить цикл по всем модулям, загруженным в рамках данного процесса. Напомним, что модуль - это общее название, используемое для обозначения *.dll (или *.exe). При доступе к ProcessModuleCollection с помощью свойства Process.Module вы получаете перечень всех модулей, задействованных в рамках соответствующего процесса – модулей .NET, модулей COM и традиционных библиотек C. Рассмотрите следующую вспомогательную функцию, которая перечислит модули конкретного процесса, заданного с помощью PID.

public static void EnumModsForPid(int pID) {

 Process theProc;

 try {

  theProc = Process.GetProcessById(pID);

 } catch {

  Console.WriteLine("-› Извините, некорректное значение PID!");

  Console.WriteLine("************************************ ");

  return;

 }

 Console.WriteLine("Загруженные модули для {0}:", theProc.ProcessName);

 try {

  ProcessModuleCollection theMods = theProc.Modules;

  foreach (ProcessModule pm in theMods) {

   string info = string.Format("-› Имя модуля: {0}", pm.ModuleName);

   Console.WriteLine(info);

  }

  Console.WriteLine("************************************ ");

 } catch {

  Console.WriteLine("Модулей не обнаружено!");

 }

}

Чтобы увидеть пример возможного вывода программы, давайте проверим затрушенные модули для. процесса, выполняемого в рамках рассматриваемого здесь консольного приложения ProcessManipulator. Для этого запустите приложение, выясните значениеPID, соответствующее ProcessManipulator.exe, и передайте это значение методу EnumModsForPid() (не забудьте соответствующим образом обновить метод Main(). Вы, наверное, удивитесь, увидев весь список модулей *.dll, которые используются для такого простого консольного приложения (atl.dll, mfc42u.dll, oleaut32.dll и т.д.). На рис. 13.5 показан результат запуска.

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Конструирование модулей

Из книги Давайте создадим компилятор! автора Креншоу Джек

Конструирование модулей Введение Эта обучающая серия обещает стать возможно одной из самых долгоиграющих мини-серий в истории, конкурирующей только с задержкой на Томе IV Кнута. Начатая в 1988, эта серия вошла в четырехлетнюю паузу в 1990, когда «заботы мира сего», изменения


7.3.2. Концепции, касающиеся основных средств производственного процесса организации Основные средства производственного процесса организации (ППО)

Из книги Модель зрелости процессов разработки программного обеспечения автора Паулк Марк

7.3.2. Концепции, касающиеся основных средств производственного процесса организации Основные средства производственного процесса организации (ППО) Организация устанавливает и сопровождает набор основных средств производственного процесса, как показано на рис. 4.1. К


17.5.6. Компиляция модулей

Из книги Linux для пользователя автора Костромин Виктор Алексеевич

17.5.6. Компиляция модулей Если вы сконфигурировали какие-то драйверы как отдельные модули (выбирали при конфигурации вариант "m" при ответе на некоторые вопросы), то вы теперь должны еще выполнить команду make modules, а затем еще команду make modules_install. В файле Documentation/modules.txt можно


5.6. Диаграммы модулей

Из книги Объектно-ориентированный анализ и проектирование с примерами приложений на С++ автора Буч Гради

5.6. Диаграммы модулей Существенное: модули и их зависимость Диаграмма модулей показывает распределение классов и объектов по модулям в физическом проектировании системы. Каждая отдельная диаграмма модулей представляет некоторый ракурс структуры модулей системы. При


Перемещение в наборе записей 

Из книги Windows Script Host для Windows 2000/XP автора Попов Андрей Владимирович

Перемещение в наборе записей  Во всех рассмотренных выше сценариях мы перемещались в наборе Recordset сверху вниз, от первой записи к последней. Существует, однако, возможность перемещаться по записям не только вперед, но и назад. Это осуществляется с помощью метода MovePrevious(),


Планирование модулей

Из книги VBA для чайников автора Каммингс Стив

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


Как предлагать товары в наборе

Из книги Удвоение продаж в интернет-магазине автора Парабеллум Андрей Алексеевич

Как предлагать товары в наборе Самый простой и очень эффективный способ – информировать человека о выгодных наборах в интернет-магазине и предложить ему купить просматриваемые товары именно в составе наборов. При этом показать, сколько денег он экономит на каждом


Тестирование модулей

Из книги Фундаментальные алгоритмы и структуры данных в Delphi автора Бакнелл Джулиан М.

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


Разработка модулей

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Разработка модулей Разработка модулей PSQL является жизненно важной частью деятельности, как разработчика, так и администратора базы данных. Поскольку запросы администратора Firebird ясны, обычно на практике эти две роли объединяются. В процессе разработки обычно довольно


Сборка модулей

Из книги Продвижение порталов и интернет-магазинов автора Гроховский Леонид О.

Сборка модулей Благодаря новой системе сборки "kbuild", в ядрах серии 2.6 сборка модулей выполняется значительно проще, чем в старых сериях. Первое, что нужно сделать при сборке модулей, — это решить, где будет находиться исходный код модуля. Исходный код модуля необходимо


Инсталляция модулей

Из книги автора

Инсталляция модулей Скомпилированные модули должны быть инсталлированы в каталог /lib/modules/version/kernel. Например, для ядра 2.6.10 скомпилированный модуль управления удочкой будет находиться в файле /lib/modules/2.6.10/kernel/drivers/char/fishing.ko, если исходный код находился непосредственно в


Загрузка модулей

Из книги автора

Загрузка модулей Наиболее простой способ загрузки модуля — это воспользоваться утилитой insmod. Эта утилита выполняет самые общие действия. Она просто загружает тот модуль, который ей указан в качестве параметра. Утилита insmod не отслеживает зависимости и не выполняет


Параметры модулей

Из книги автора

Параметры модулей Ядро Linux предоставляет возможность драйверам определять параметры, которые пользователь будет указывать при загрузке ядра или модуля. Эти параметры будут доступны коду модуля в качестве глобальных переменных. Указанные параметры модулей также будут


Приложение 2 100 SEO-модулей

Из книги автора

Приложение 2 100 SEO-модулей 1. Модуль сбора позиций.2. Модуль генерации ЧПУ.3. Модуль генерации Description.4. Модуль генерации Title.5. Модуль генерации H1.6. Ловец ботов.7. Модуль перелинковки для улучшения анкорного ранжирования.8. Модуль перелинковки для индексации новых страниц.9.