Образовательный проект «SnakeProject» Михаила Козлова

Навигация

⇒ Powershell ⇐

CISCO

Voice(Asterisk\Cisco)

Microsoft

Python

SQL\T-SQL

FreeBSD and Nix

Общая

WEB Разработка

ORACLE SQL \ JAVA

Мото

Стрельба, пневматика, оружие

Саморазвитие и психология


WMI .NET COM


Давайте посмотрим для начала список классов WMI чтоб понять с чем вообще можно работать:

 
PS C:Windowssystem32> Get-WmiObject -list
 
    Например давайте выберем такой класс как win32_OperatingSystem:
 
PS C:Windowssystem32> Get-WmiObject win32_operatingSystem
 
 
SystemDirectory : C:Windowssystem32
Organization    :
BuildNumber     : 7600
RegisteredUser  : Mihail
SerialNumber    : 55041-005-4348027-86242
Version         : 6.1.7600
 
    Теперь давайте посмотрим что под капотом у данного класса(вывод сокращен):
 
PS C:Windowssystem32> Get-WmiObject win32_operatingSystem | Get-Member
 
 
   TypeName: System.Management.ManagementObject#rootcimv2Win32_OperatingSystem
 
Name                                      MemberType   Definition
—-                                      ———-   ———-
Reboot                                    Method       System.Management.ManagementBaseObject Reboot()
SetDateTime                               Method       System.Management.ManagementBaseObject SetDateTime(System.St
Shutdown                                  Method       System.Management.ManagementBaseObject Shutdown()
Win32Shutdown                             Method       System.Management.ManagementBaseObject Win32Shutdown(System.
Win32ShutdownTracker                      Method       System.Management.ManagementBaseObject Win32ShutdownTracker(
BootDevice                                Property     System.String BootDevice {get;set;}
BuildNumber                               Property     System.String BuildNumber {get;set;}
BuildType                                 Property     System.String BuildType {get;set;}
Caption                                   Property     System.String Caption {get;set;}
CodeSet                                   Property     System.String CodeSet {get;set;}
 
    И выведем какое-нибудь свойство:
 
PS C:Windowssystem32> Get-WmiObject win32_operatingSystem | Format-List -property BuildType
 
 
BuildType : Multiprocessor Free
 
   Для начало все очень понятно и просто. Идем дальше:
   Вот например можно таким способом переименовать компьютер…
 
(Get-Wmiobject -Class win32_computersystem -ComputerName job).Rename(«home»)
 
Метод Rename() я смотрел из вывода   (Get-Wmiobject -Class win32_computersystem -ComputerName job) | Get-Member  
 
 
 Объекты среды WSH могут быть созданы заданием следующих программных идентификаторов: WScript.ShellWScript.NetworkScripting.Dictionaryи Scripting.FileSystemObject. Эти объекты создаются следующими командами:

 

New-Object -ComObject WScript.Shell New-Object -ComObject WScript.Network
Например подключим сетевой принтер:
PS C:Windowssystem32> $wshell = New-Object -comobject wscript.network
PS C:Windowssystem32> $wshell | Get-Member

 TypeName: System.__ComObject#{24be5a31-edfe-11d2-b933-00104b365c9f}

Name MemberType Definition
---- ---------- ----------
AddPrinterConnection Method void AddPrinterConnection (string, string, Variant, Variant, Variant)
AddWindowsPrinterConnection Method void AddWindowsPrinterConnection (string, string, string)
EnumNetworkDrives Method IWshCollection EnumNetworkDrives ()
EnumPrinterConnections Method IWshCollection EnumPrinterConnections ()
MapNetworkDrive Method void MapNetworkDrive (string, string, Variant, Variant, Variant)
RemoveNetworkDrive Method void RemoveNetworkDrive (string, Variant, Variant)
RemovePrinterConnection Method void RemovePrinterConnection (string, Variant, Variant)
SetDefaultPrinter Method void SetDefaultPrinter (string)
ComputerName Property string ComputerName () {get}
Organization Property string Organization () {get}
Site Property string Site () {get}
PS C:Windowssystem32> $wshell.AddWindowsPrinterConnection("\serverHP LaserJet M5035 MFP PCL 6")

 


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

Контакты Группа ВК Сборник материалов по Cisco, Asterisk, Windows Server, Python и Django, SQL и T-SQL, FreeBSD и LinuxКод обмена баннерами Видео к IT статьям на YoutubeВидео на другие темы Смотреть
Мои друзья: Советы, помощь, инструменты для сис.админа, статическая и динамическая маршрутизация, FreeBSD

© Snakeproject.ru создан в 2013 году.
При копировании материала с сайта - оставьте ссылку.
Весь материал на сайте носит ознакомительный характер,
за его использование другими людьми, автор ответственности не несет.

Рейтинг@Mail.ru
Рейтинг@Mail.ru Яндекс.Метрика





Поддержать автора и проект