Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Всё о работе в Интернет" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Секреты Windows: статьи о реестре, rundll32.exe, программах Недокументированные возможности Windows XP. MMC. Часть 6
Другие наши рассылки: Новости нашего сайта: Продолжение, начало в выпусках: 1 2 3 4 5 В конец записи
оцените: 1 2 3 4 5 Книга "Недокументированные возможности Windows XP. Библиотека пользователя", Глава 3. Консоль управления Microsoft. Часть 6. Оснастки Windows XP: Управляющий элемент WMI, окончание. Получение сведений о компьютере Также с помощью базы данных CIMOM можно определить конфигурацию операционной системы. Метод определения конфигурации подобен методу определения установленных на компьютере компонентов, поэтому мы рассмотрим лишь часть кода, с помощью которой выполняется обращение к базе данных. Листинг 3.04. Получение сведений об операционной системе set objWMIService = GetObject("winmgmts:" & "{impersonationLevel = impersonate}!\root\cimv2") set colOS = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") for each objOperatingSystem in colOS objTextFile.WriteLine objOperatingSystem.Name next Именно так можно подключиться к базе данных сведений об операционной системе и записать в файл сведения об операционной системе, но к каким столбам таблицы можно получить доступ (кроме используемого в листинге столбца NAME, который содержит имя операционной системы и путь к папке Windows)? Ниже перечислены некоторые из таких столбцов (в контексте инструментария управления WMI они называются свойствами).
Мы с вами рассмотрели лишь 13 свойств класса WIN32_OPERATINGSYSTEM, на самом же деле данный класс имеет 35 свойств. Не имеет смысла описывать остальные свойства, так как все они отлично описаны в стандартном файле cimwin32.mfl, расположенном в каталоге %systemroot%\SYSTEM32\wbem, а автор не брал на себя задачу создания книжного аналога данного файла. Поэтому за дополнительной информацией обращайтесь к файлу cimwin32.mfl (просто поищите в нем строку WIN32_OPERATINGSYSTEM). Кроме класса WIN32_OPERATINGSYSTEM для описания компьютера можно использовать следующие классы. WIN32_COMPUTERSYSTEM Содержит следующие свойства, описывающие работающий компьютер.
WIN32_PROCESSOR Определяет один экземпляр процессора (для многопроцессорных систем существует несколько экземпляров данного класса) и содержит следующие свойства.
WIN32_BIOS Определяет атрибуты служб ввода/вывода, установленных на компьютере и содержит следующие свойства.
Данный класс содержит 11 свойств, поэтому за описанием других свойств обращайтесь к файлу cimwin32.mfl, расположенному в каталоге %systemroot%\SYSTEM32\wbem. WIN32_OSRECOVERYCONFIGURATION Определяет установленные настройки выполнения дампа памяти при аварийном останове системы и содержит следующие свойства.
Данный класс содержит 11 свойств, поэтому за описанием других свойств обращайтесь к файлу cimwin32.mfl, расположенному в каталоге %systemroot%\SYSTEM32\wbem. WIN32_PROCESS Определяет запущенные в данный момент на удаленном или локальном компьютере процессы и содержит следующие свойства.
Данный класс содержит 30 свойств, поэтому за описанием других свойств обращайтесь к файлу cimwin32.mfl, расположенному в каталоге %systemroot%\SYSTEM32\wbem. WIN32_STARTUPCOMMAND Определяет файлы, запускаемые при входе пользователя в систему. При этом возвращаются не только исполняемые файлы, но и файлы других типов (независимо от расширения файла, если исполняемая программа обращается к данному файлу, тогда класс считает, что данный файл запускается при входе пользователя в систему). Например, на компьютере автора данный класс вернул около 4582 файлов, которые запускаются при входе пользователя в систему. Данный класс содержит следующие свойства.
WIN32_NTEVENTLOGFILE Определяет параметры настройки системных журналов (рассмотренная нами оснастка ПРОСМОТР СОБЫТИЙ) и содержит следующие свойства.
WIN32_ACCOUNTSID Определяет учетные записи и группы, созданные на данном компьютере. Данный класс содержит следующие два свойства.
Это далеко не все возможные классы и их свойства. Автор не брал на себя ответственность по полному их описанию. Тем не менее, уже по описанным свойствам можно понять, что инструментарий управления WMI позволяет получить описание если не всех параметров работы компьютера и установленных на нем приложений, то большинства из них. А если учитывать, что WMI постоянно развивается, скоро от ее глаз не скроется ни одна мелочь в работе компьютера. Другие классы и функции пространств имен WMI WMI является неисчерпаемой темой для обсуждения, так как она содержит просто огромное количество классов, не говоря уже о количестве функций, реализованных в этих классах. Для описания всех функций WMI (не говоря уже об объектах сервера сценариев Windows для доступа к файловой системе и реестру и их методах) необходимо писать отдельную книгу страниц где-то на 1000. Поэтому в контексте данной книги мы закончим обсуждение базы данных CIMOM и пространств имен WMI. Если же приведенных выше скриптов для вас мало, тогда в Интернете можно найти множество уже готовых скриптов работы с WMI. Кроме того, список всех классов, их функций, а также краткое описание работы этих функций можно найти в самой Windows XP. Краткие сведения обо всех функциях пространств имен WMI описаны в файлах с расширением .mof и .mfl (в файлах с расширением .mof содержится описание функций на английском языке, а в файлах с расширением .mfl — на русском), расположенных в каталоге %systemroot%\system32\wbem. Например, среди данных файлов можно найти файл sr.mof. А в этом файле можно найти описание всех классов, предназначенных для работы с SystemRestore. Например, вот небольшая вырезка из данного файла, описывающая рассмотренный нами выше класс SystemRestore. Листинг 3.05. Описание класса SystemRestore в файле sr.mof [Dynamic, Provider ("SystemRestoreProv")] class SystemRestore { [read, write] String Description; [read, write] uint32 RestorePointType; [read, write] uint32 EventType; [read, write, key] uint32 SequenceNumber; [read, write] String CreationTime; [Implemented, static, Description( "The CreateRestorePoint method creates a restore point." "It returns a COM error code.")] uint32 CreateRestorePoint([In] String Description, [In] uint32 RestorePointType, [In] uint32 EventType ); [Implemented, static, Description( "The Enable method enables SR on a drive." "It returns a COM error code.")] uint32 Enable([In] String Drive, [In] Boolean WaitTillEnabled); [Implemented, static, Description( "The Disable method disables SR on a drive." "It returns a COM error code.")] uint32 Disable([In] String Drive); [Implemented, static, Description( "The Restore method restores the system to a specified restore point." "It returns a COM error code.")] uint32 Restore([In] uint32 SequenceNumber); [Implemented, static, Description( "Returns the status (0=fail, 1=success, 2=interrupted) of the last restore.")] uint32 GetLastRestoreStatus(); }; Как можно заметить из данной вырезки, также с помощью класса SystemRestore можно определить, была ли успешной предыдущая попытка восстановления системы из контрольной точки, а также автоматически восстановить систему на основе указанной контрольной точки. К сожалению, не существует файла sr.mfl, то есть, содержащего описание данного файла на русском языке. Зато в каталоге %systemroot%\system32\wbem есть файл cimwin32.mfl, содержащий в себе описание всех функций и классов пространства имен ROOT\CIMV2 на русском языке. Также в каталоге %systemroot%\system32\wbem содержатся следующие интересные файлы.
Стандартные скрипты сервера сценариев И напоследок хотелось бы описать стандартные скрипты сервера сценариев Windows XP (поставляются вместе с Windows XP Professional). Все эти скрипты расположены в каталоге %systemroot%\system32. Eventquery.vbs Предназначен для работы с системными журналами событий (оснастка ПРОСМОТР СОБЫТИЙ) и при запуске без опций, например, cscript.exe C:\WINDOWS\SYSTEM32\eventquery.vbs, перечисляет все события, записанные в локальном журнале СИСТЕМА. Чтобы просмотреть возможные опции работы данного скрипта, необходимо ввести команду cscript.exe C:\WINDOWS\SYSTEM32\eventquery.vbs /?. Честно сказать, количество опций впечатляет. Можно подключаться к удаленному компьютеру, для этого указать учетную запись и пароль, настроить фильтр выводимых записей событий, настроить способ вывода событий и т.д. Данный скрипт хорошо описан, да к тому же еще и на русском языке, а также содержит в себе набор примеров, поэтому его использование сложности не представляет. Также его хорошо использоваться для изучения работы инструментария управления WMI, так как данный скрипт написан на его основе, хотя размер скрипта в 2080 строк не вдохновляет на изучение. Pagefileconfig.vbs Предназначен для работы с файлом подкачки как локального так и удаленного компьютера. При вызове без параметров отображает сведения о локальном файле подкачки: диске, на котором он расположен, пути и его имени, исходный размер файла подкачки, максимальный размер, а также размер файла подкачки на данный момент. Также определяет количество свободного места на логическом диске. Также можно выполнить команду cscript.exe C:\WINDOWS\SYSTEM32\ pagefileconfig.vbs /? для вывода описания возможных опций данного скрипта. Эти опции объединены в группы, описание которых можно вызвать с помощью следующих команд.
Данный скрипт также написан при помощи инструментария управления WMI, но его размер в 3302 строчки также не способствует его изучению. Prncnfg.vbs Предназначен для выполнения конфигурации принтера, установленного на локальном компьютере: изменении его имени, порта, приоритета и многих других параметров. Prndrvr.vbs Предназначен для выполнения настройки драйверов принтера, установленного на локальном компьютере: удаление, добавление, перечисление драйверов. Prnjobs.vbs Предназначен для работы с заданиями принтера: просмотр всех заданий, приостановка и продолжение выполнения задания, а также отмена выполнения задания. Prnmngr.vbs Предназначен для подключения и отключения принтеров (установленных на удаленном компьютере). Prnport.vbs Предназначен для подключения и отключения TCP-порта принтера. Prnqctl.vbs Позволяет выполнить пробную печать на данном принтере, а также приостановить работу принтера. Продолжение следует Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=148
|
В избранное | ||