2010-07-14 71 views
1

假設我們有多個庫(DLL),它們的特性是想在應用程序中使用,並且希望將它們用作單個DLL。VC++將多個COM DLL合併爲一個

是否有可能將DLL合併到一個DLL中,並將所有功能打包到它中?我沒有看寫封裝的選項。

編輯:

我已經重溫了這個問題。現在我想要做的就是將所有項目都帶到一個解決方案中,並將單個DLL作爲輸出,而不是每個具有獨立輸出的項目。這可能嗎?

+0

可能的重複 - http://stackoverflow.com/questions/145499/merge-several-native-dlls-into-one-dll – Motti 2010-07-14 14:07:09

回答

1

你不能從字面上將幾個已編譯的.dll文件合併爲一個。最好的辦法是將所有文件放入一個項目中,並重新編譯爲單個庫。您可能會遇到必須手動解決的衝突。

如果您確實有多個COM進程內服務器,您還需要合併促進類工廠和COM註冊的數據 - 您必須手動執行此操作。

+0

這就是我害怕..是希望反對希望,我會得到一個更好的選擇... – 2010-07-14 14:01:57

+0

@ Whiskey-Tango-Foxtrot:是的,我明白了。但是,將幾個.dll文件合併成一個文件幾乎與將幾個.exe文件合併爲一個文件相同 - 只是無法完成。不過重新編譯可能不那麼困難,只是不要嘗試去靜態庫的方式。 – sharptooth 2010-07-14 14:06:52