2011-07-25 52 views
0

當我從WPF應用程序啓動InnoSetup安裝程序時,我無法與WPF窗口交互,直到安裝完成。有什麼辦法可以防止這種情況發生?產生的進程鎖WPF UI

+0

非常相似http://stackoverflow.com/questions/2406251/running-another-process-without-gui-freezing但解決方案有基於一個事實,即用戶開始從GUI線程的過程。我從另一個線程開始這個過程。 –

+0

其實你可能也從UI線程開始它:) –

回答

1

你嘗試包裝過程中產卵代碼裏面ThreadPool.QueueWorkUserItem安裝程序?

UPDATE

嘗試來裝飾你的WPF託管WCF服務與

[ServiceBehavior(UseSynchronizationContext=false)] 

停在UIThread服務請求,從而使人們有可能在進程句柄塊。

+0

它的工作原理,但它不能解決我的問題。我需要用進程的退出代碼同步回答我的WCF客戶端。 –

+0

否則我將不得不重寫我的WCF合約以異步回答 –

+0

啊,那麼您應該在原始帖子中包含該約束:)所以,您有一個WPF應用程序,它也充當WCF服務主機? –