我有一個Visual Studio解決方案,用於具有某些類庫的Windows窗體應用程序,這些類庫是我的應用程序模塊。我的應用程序在「任何CPU」下運行,不能更改爲「x86」,因爲它使用大量的64位dll引用。用於32位dll訪問的自託管WCF服務
我有一個本地C++ 32位DLL,我需要的應用程序的一個模塊內使用,但它是相當不可能的,不想使用的外包裝,所以我已閱讀,最簡單的就是使用可自託管的WCF服務。
我在想的方法是在我的解決方案中創建一個控制檯應用程序(32位)項目,它將引用Native C++ 32位dll,並將託管WCF服務,然後當用戶打開應用程序模塊,我會打電話Process.Start(自我託管的wcf控制檯app.exe)所以我的WCF服務啓動,然後從我的Windows窗體應用程序,我可以訪問的方法等..然後,我將能夠使用本機32位dll方法。
我認爲這被稱爲Out-of Process應用程序。
有沒有人認爲有更好的方法來做到這一點?我真的不想要.EXE應用程序(主應用程序exe和自己託管的wcf.exe),我可以讓自己託管的wcf 32位項目在我的主app.exe 64位項目中生存嗎?如果有可能,我怎麼稱呼它?
在此先感謝
通過將此呼叫置於進程外,與致電相比,您將收到巨大的性能損失它正在進行中。這是分佈式對象設計第一定律的基礎:http://martinfowler.com/bliki/FirstLaw.html – 2013-05-13 13:42:59