2011-07-11 118 views
0

我有2個DLL。 B依賴於A.我有一些Windows服務只使用A中的類。我是否需要在這些Win svcs中包含DLL B(爲其添加引用)?VB.NET DLL依賴關係問題

我問的原因是我已經嘗試了兩種方法:包括A和B,並且只包含A.在一個win svc中,一切似乎都只能在A上正常工作。另一個問題是, t加載A,因爲它依賴於無法找到的B「(單詞爲此)。所以我很困惑。對於這種困境,我是否構建DLL和Win Svcs作爲Release vs Debug?

回答

1

發佈/調試配置應該沒有關係。大多數情況下,.net運行時不會在需要時加載dll。在運行時,JIT編譯器可能會發現它需要編譯一個引用未裝載的程序集中定義的Class/Struct的方法。那時,它將嘗試解析(定位)程序集文件。

異常通常有足夠的線索,以確定到底是怎麼回事,所以這裏有一些想法,讓你開始:

  • 使用B中定義的類型,它有一個方法第一次/現場的/ etc。在A中定義。
  • 第一次創建A中定義的類型或函數的實例。