我有一個Windows服務必須使用網絡驅動器上的dll文件。當我連接到這個網絡驅動器時,我添加了這個dll作爲我的Windows服務的參考。通過添加此dll文件自動創建2個以上的參考文件。這個服務上有一個代碼,它只是從dll創建一個類的實例。當我在Visual Studio 2010上調試此代碼時,當我按F10(跳過)時,它會引發異常:Windows服務和Dll在網絡驅動器
「檢索具有CLSID的組件的COM類工廠{65EB3876-89FF-459F-BF24-02E8DD7F2DB2}由於以下錯誤而失敗:8007007e找不到指定的模塊(來自HRESULT的異常:0x8007007E)。「
我在Windows窗體應用程序上使用相同的dll和相同的代碼進行測試。它不會提供任何錯誤併成功創建類實例。
它可能是與網絡驅動器的權限相關的東西?
CLSID是否已註冊?在註冊表中搜索它。網絡dll是一個需要註冊的COM對象,或者它是引用一個需要註冊的COM對象。 – 2012-03-30 03:29:54
@Samuel Neff我在「65EB3876-89FF-459F-BF24-02E8DD7F2DB2」中搜索了regedit。是的,它已經註冊。當我將網絡驅動器上的dll添加爲參考時,是否需要註冊其他兩個自動添加的參考? – caranhithion 2012-03-30 05:43:25
它是使用UNC路徑還是通過映射的驅動器號註冊的? – 2012-04-01 17:10:42