在應用程序中使用RunSpace 3

 

在上一次的博客中我們已經完成了最簡單的運行空間開啓以及管道調用

當然你可能並不甘心,並不滿足僅僅運行Get-Disk 這麼簡單的命令

或許你已經嘗試使用Get-ADUser 來檢索活動目錄用戶,當然這在V3,以及V4之後的版本都沒問題,由於V2版本太過久遠而我個人也已經記不太清當時的情況,可能是得益於V3,V4版本的動態模塊加載功能,現在我也已經不再需要調用的第一個管道中的命令要導入模塊了

當然我依然有時候需要使用一種叫做Snapin的東西話說我個人是非常喜歡用Snapin的 雖然註冊有點麻煩,但是由於自行的開發的Snapin 更加符合自己的使用習慣,

其實在這種場景下我們一定會遇到下面的錯誤

clip_p_w_picpath001

你可能跟我說根本就沒有這個命令嘛你逗我?事實上你沒有這個命令因爲你根本沒有註冊相應的Snapin而已 爲了證明我沒有騙你

clip_p_w_picpath003

事實上我們要論的焦點並不是有沒有這個Snapin 的問題而是要討論下在我們使用默認方法打開運行空間運行空間都要加載那些Snapin這纔是我們需要關注的問題所以我們不妨調用之前學會的方法去Get一下就可以知道,微軟官方有個說法就是一個默認的運行空間在開啓之後之加載默認的配置,具體配置可以去TechNet 查詢

好了這個蛋疼的問題解決之後就好辦多了,下面我開始進行自定義的運行空間

我們之前說過Runspace實例可以通過使用RunspaceFactory 的方法進行創建在其方法重載中可以使用一個現有的RunspaceConfiguration 進行創建

代碼如下

clip_p_w_picpath004

我們通過RunspaceConfiguration.Create() 創建僅僅包含基本配置的運行空間配置之後使用 AddPSSnapIn方法添加我們需要的SnapIn 當然也可以使用RemovePSSnapIn

RunspaceConfiguration 實例中包含其他屬性可用於查詢當前配置包含的命令程序集,以初始化腳本等當然如果你不滿足現有方法那麼依然可以RunspaceConfiguration. Create的其他重載從一個已有的控制檯文件創建相應的配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章