我繼承了一個由爲數衆多的通信使用COM和EXE的COleDispatchDriver文件的應用程序。有一個主要的「客戶端」exe文件和幾個提供服務的「服務器」可執行文件。的COleDispatchDriver與特定的EXE作爲COM服務器
目前,客戶端進程開始使用的COleDispatchDriver :: CreateDispatch()的服務器,通過該得到解決一類ID的應用程序ID。問題在於它依賴於正在註冊的COM服務器(一個潛在的故障點)。如果機器上有多個不同版本的COM服務器,它也會有問題。
我想使這個不那麼脆弱,而無需完全重新構建在這一點上的應用。有沒有辦法保持相同的通信機制,但明確啓動特定的服務器應用程序?客戶端知道服務器應用程序的位置以及它們的名稱(它們位於同一目錄中的客戶端旁邊)。