#新建隨機數對象實例:
$Ran = New-Object System.Random
$Ran.NextDouble()
有時候,要使用的實例的類保存在獨立的庫文件中,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,如下圖所示就可以找到所需要的程序集:

而對於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目錄下是可用的程序集:
例:[System.Reflection.Assembly]::LoadWithPartialName("TaskScheduler")

查看可用程序集:

創建實例類:
$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
