2015-08-25 86 views
0

在過去的一年中,我已經完成了構建PowerShell應用程序的任務。PowerShell多線程winforms應用程序

它的目的是在發佈時僅用於收集數據。

靈感的主要觀點來自Francois-Xavier Cat的「◦LazyWinAdmin工具(WinForm)」。

我已經使用Sapiens PrimalForm生成接口,然後構建所需的腳本。

接口正在工作,腳本正在工作。

我在哪裏工作的唯一可用版本的PowerShell是V2,PS遠程處理和任何Invoke- *都受到限制。

主要的操作系統是Windows 7與罕見的Win 8/8.1的場合。

因此,您將看到我的腳本中使用了WMI對象。

我的一些同事仍然有Net Framework 3.5,必須考慮到一些界面元素可能會干擾。

過去幾個月中消耗了大量時間的主要問題是凍結GUI問題。

任何試圖用PowerShell製作任何GUI的人都遇到過這個問題。

此刻,我已閱讀/收藏了超過100個PowerShell多線程的論壇/網頁/線程。

我測試了RunSpace Pool方法,它似乎是我所需要的最快的方法。

由於在大多數論壇上這種方法被認爲是邊緣.NET開發的事實,所以我遇到了很大的困難。

我是,對我來說,無法使接口,線程函數和腳本一起工作;使接口在一個線程上運行,腳本在一個單獨的線程上運行。

我發佈在我的應用程序的完整代碼下面。 請告知是否有辦法克服腳本在單獨的線程上運行。

由於整個代碼超過了最大的身體我必須從我的Git頁面中添加應用程序:

https://github.com/GeorgeChe/PowershellApp.git

我也曾想過點採購了單獨的腳本,並創建一種模塊化的應用,產生了更多的錯誤比固定。 我還在Git頁面上添加了線程功能。

任何幫助,非常感謝。

回答