2010-04-28 58 views
22

概述:我有興趣瞭解更多關於.NET4「進程內並行執行」的程序集,並且需要附加信息以幫助我揭開神祕面紗。.NET4:進程內並行執行解釋

動機:有問題的應用程序是針對.NET2構建的,並使用了兩個也可用於.NET2的第三方庫。該應用程序通過文件複製部署到包含.NET2的虛擬環境中的客戶端計算機上。 不是我的架構,請耐心等待。

目標:要查看是否有可能像以前一樣重新構建應用程序組件(或子集)對.NET4並銷售應用程序,而無需改變第三方庫和包括.NET4客戶端配置文件(如here所述)。

所採取的步驟:下面的文章被閱讀,但並沒有完全爲我提供足夠的信息:

  1. In-Process Side-by-Side Execution:瀏覽這篇文章,方案二是它來描述的東西的最接近的類似於我的情況,但沒有真正覆蓋任何深度。

  2. ASP.NET Side-by-Side Execution Overview:本文介紹了一個Web應用程序,但我正在處理客戶端WinForms應用程序。

  3. CLR Team Blog: In-Process Side-by-Side:這對於解釋如何在.NET4下主機進程的插件功能很有用,但我不知道這是否適用於第三方庫。

進一步措施:我也對如何進行升級單.NET2組件.NET4不清,與留在.NET2(可執行即如何配置解決方案/項目文件,如果需要包含任何特殊的代碼等)。

+3

+1,非常好的問題。 – 2010-04-28 16:40:19

+1

也許愚蠢的問題,但你有沒有試過在.NET 4 CLR中運行應用程序?你是否知道*第三方程序集無法工作(例如,由於混合模式代碼)?我會試着讓所有的東西都在.NET 4下運行,然後再並行進行。 – 2010-04-28 16:45:22

+0

忽略以前的評論。根據我的理解(並且我對此也很模糊),虛擬環境(ThinApp)提供了某種.NET2可再發行組件,而第三方庫(Crystal Reports)則與此相反。所以,不,現在還沒有機會,但目前正在研究 - 我想知道我正在做什麼。 我認爲在ThinApp客戶端就地升級是一種痛苦,但*我認爲*我們可以通過文件副本分發​​.NET客戶端配置文件,而不需要太多連接。 – emptyset 2010-04-28 17:20:11

回答

1

通常,您可以在.NET 4運行庫中加載針對.NET 2創建的程序集。所以你應該先試試看看它是否「正常工作」。只是將您的應用程序轉換爲VS 2010/.NET 4,並嘗試使用與第三方程序集相同的參考進行編譯。然後部署,它可能會工作。