作者bombilla (地板別打我!>"<)
看板C_Sharp
標題[問題] DLL參考另外的DLL
時間Wed Nov 14 13:52:27 2012
各位好,小弟有個問題需要請教一下:
情況是這樣的,現在手邊有一個主程式,採用的是plug-in的架構。
所以會使用到很多的DLL,假設叫DLL-A,DLL-B,DLL-C…etc。
主程式會根據設定檔去讀入某個路徑下的所有符合架構的DLL檔,
然後開始作業。
=============================================================
其中有個DLL,假設就是DLL-A好了,它又會去參考到另外的DLL-1,
這個DLL-1並不是符合這個plug-in架構的函式庫。
只是因為DLL-A需要藉由這個這個DLL-1去控制儀器。
這個DLL-1可能是Native dll也可能是.Net dll。
=============================================================
那現在的問題就是我發現如果把DLL-1跟DLL-A放在同一個目錄下,
DLL-A沒辦法正常的運作,因為找不到DLL-1。
除非把DLL-1放到跟主程式的執行檔同一個目錄下才可以。
所以想請問有沒有辦法解決這種狀況,
讓DLL-1不需要跟著主程式跑,而是跟著DLL-A跑。
感謝各位~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.128.88.200
1F:→ winder611:可以試試ILMerge 應該可以將兩個dll併在同一支dll 11/14 16:45
4F:→ bombilla:感謝兩位~~我今天會去試看看再來報告結果。感謝~ 11/15 07:14
5F:→ bombilla:ILMerge這招行不通。嘗試讀進來的時候會發生exception。 11/16 10:00
6F:→ bombilla:那更改dll search path的方式,也不行,還是讀不到。 11/16 10:01
7F:→ bombilla:我的主程式會去讀.net dll,然後這個.net dll會在被 11/16 10:01
8F:→ bombilla:instance時,去linking到native dll。目前的解法還是把 11/16 10:02
9F:→ bombilla:native dll放到跟主程式同一個目錄… 11/16 10:02