#新建隨機數對象實例:
$Ran = New-Object System.Random
$Ran.NextDouble()html
有時候,要使用的實例的類保存在獨立的庫文件中,PowerShell默認未加載,會出現以下錯誤提示,就須要先加載庫文件,而後再建立實例類:數據庫
這時候,在MSDN的.NET Framework 類庫中去查找該實例類包含在哪一個庫文件中,地址 http://msdn.microsoft.com/zh-cn/library/gg145045(v=vs.110).aspx編程
對於 System.Windows.Forms.NotifyIcon來講,在.NET Framework 類庫中能夠直接查找到 System.Windows,而後再在 System.Windows 中去查找System.Windows.Forms,再依次去查找 System.Windows.Forms.NotifyIcon,以下圖所示就能夠找到所須要的程序集:windows
而對於SecureString來講,則能夠進行猜想,如查找 Security 關鍵字,能夠查到 System.Security 的命名空間,以後就能夠找到 System.Security.SecureString 了,而後使用 new-object System.Security.SecureString能夠建立成功安全
使用 System.Reflection.Assembly類提供的方法來加載類庫:
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")網絡
C:\Windows\assembly目錄下是可用的程序集:dom
例:[System.Reflection.Assembly]::LoadWithPartialName("TaskScheduler")ssh
查看可用程序集:函數
建立實例類:
$balloon = New-Object System.Windows.Forms.NotifyIcon佈局
#新建隨機數對象實例:
$Ran = New-Object System.Random
$Ran.NextDouble()
(new-object Net.WebClient).DownloadString("http://live.com")
LoadWithPartialName方法不適合在腳本或產品發佈的環境中使用,他加載最新的庫文件,可能與用來開發的版本不一致。比較安全的加載庫文件的方法是使用[Reflection.Assembly]::Load()加上完整的名稱。
PowerShell經常使用的.COM對象:
COMAdmin.COMAdminCatalog :提供了訪問和管理Windows COM編錄
Excel.Application :容許自動化Microsoft Excel和與之的交互
Excel.Sheet: 容許與Excel工做表之間的交互
HNetCfg.FwMgr: 提供對Windows防火牆的管理功能的訪問
HTMLFile:容許和一個新的Internet Explorer文檔交互
MAPI.Session:提供對MAPI(消息應用程序編程接口)的會話的訪問,如文件夾、郵件和通信簿
Microsoft.Update.AutoUpdate:提供了對Microsoft Update自動更新計劃的管理
Microsoft.Update.Installer:容許從Microsoft Update安裝更新
Microsoft.Update.Session:提供對有關Microsoft Update本地歷史記錄的信息的訪問
Microsoft.Update.SystemInfo:提供對當前系統與Microsoft Update有關的信息的訪問
MMC20.Application:容許管理控制檯(MMC)的自動化和與之進行交互
MSScriptControl.ScriptControl:容許評估和控制WSH腳本
Msxml2.XSLTemplate:容許XSL轉換處理
Outlook.Application:容許和你的Microsoft Outlook應用,如電子郵件、日曆、聯繫人等進行交互和自動化應用
OutlookExpress.MessageList:容許經過Outlook Expresshe 和你的電子郵件交互及自動化
PowerPoint.Application:容許自動化Microsoft PowerPoint和與之交互
Scripting.FileSystemObject:提供對計算機的文件系統的訪問
ScriptPW.Password:容許假裝輸入的純文本密碼》若是可能,應避免使用這個。應該優先考慮使用read-host -AsSecureString參數
Shell.Application:提供對Windows Explorer Shell應用程序,如管理窗口、文件盒文件夾和當前會話的方面的訪問
Shell.LocalMachine:提供對有關當前計算機與Windows Shell程序此昂管的信息的訪問
Shell.User :提供對當前用戶的Windows回話和配置文件方面的訪問
SQLDMO.SQLServer:提供對Microsoft SQL Server的管理功能的訪問
Word.Application:容許和Microsoft Word的交互與自動化
Word.Document:容許與Microsoft Word文檔進行交互
WScript.Network:提供對互聯網的Windows環境方面的訪問,如打印機、網絡驅動器,以及計算機和域信息
WScript.Shell:提供對Windows Shell,例如應用程序、快捷方式、環境變量、註冊表和操做環境的方面的訪問
WSHController:在遠程計算機上運行WSH腳本的執行
PowerShell經常使用的.Net對象
System.Management.Automation.PSObject:表示一個PowerShell對象,可向其添加註釋、屬性和更多
System.DateTime:表示一個即時時間
System.Math:提供了常見的數學函數的常量和靜態方法
System.Random:表示隨機的生成器,生成一系列符合某些統計數字隨機性的需求
System.Environment:提供有關信息,表示操做,當前環境和平臺
System.Console:表示控制檯應用程序的標準輸入、輸出和錯誤流
System.Diagnostics.EventLog:提供了與Windows事件日誌的交互
System.Diagnostics.Process:提供對本地和遠程進程的訪問,啓動和中止本地系統進程
System.Diagnostics.StopWatch:提供了一組方法和屬性,用於準確的測量運行時間
System.Media.SoundPlayer:控件從.wav文件中播放聲音
System.AppDomain:表示應用程序域,即應用程序執行的隔離的環境
System.Reflection.Assembly:自定義程序集,是一個可重複使用,可轉換和自描述的公共語言運行庫應用程序的構造塊
System.Security.Principal.WindowsIdentity:表示一個Windows用戶
System.Windows.Forms.Form:表示一個窗口或對話框,構成應用程序的用戶界面
System.windows.Forms.FlowLayoutPanel:表示動態佈局其內容的一個面板
System.Uri :提供了一個對象,表示統一資源標識符(URI)。能夠方便的訪問URI各個部分
System.Net.NetworkCredential:爲基於密碼的身份驗證提供憑據(如基本、簡要、Kerberos身份驗證和NTLM)
System.Net.DNS:提供了簡單的域名解析功能
System.Net.FtpWebRequest:實現一個FTP客戶端
System.Net.HttpWebRequest:提供的特定於HTTP實現的WebRequest類
System.Net.WebClient:提供經常使用的方法來發送和接收由URI標識的一個資源中的數據
System.Net.Sockets.TcpClient:提供了TCP網絡服務的客戶端鏈接
System.Net.Mail.MailAddress:表示某個郵件發件人或收件人的地址
System.Net.Mail.MailMessage:表示可使用smtpClient類發送電子郵件
System.Net.Mail.SmtpClient:表示應用程序經過SMTP發送電子郵件
System.Xml.XmlDocument:表示一個XML文檔
System.DirectoryServices.DirectorySearcher:對AD執行查詢
System.Data.SqlClient.SqlCommand:表示針對SQL Server數據庫來執行的T-SQL語句或存儲過程
System.Data.SqlClient.SqlConnection:表示到SQL Server數據庫的打開的鏈接
System.Data.SqlClient.SqlDataAdapter:表示一組數據命令和數據庫鏈接,用於填充DataSet和更新SQL數據庫
System.Data.Odbc.OdbcCommand :表示針對某一odbc數據庫執行的一個T-SQL語句或存儲過程
查看[System.Net.IPAddress] 可用的屬性和方法
[System.Net.IPAddress]|gm -Static
[System.DateTime] |gm -static -membertype Method