位於網絡文件夾中的reg asm註冊的COM服務器工作不正常。當您嘗試創建對象時出現錯誤「自動化錯誤」。如果dll位於本地磁盤上,一切工作正常。我可以安裝嗎?位於網絡共享文件夾的NET COM庫?
其它的信息:
寫在COM庫通過VB宏
圖書館網絡3.5
訪問COM具有強名稱
位於網絡文件夾中的reg asm註冊的COM服務器工作不正常。當您嘗試創建對象時出現錯誤「自動化錯誤」。如果dll位於本地磁盤上,一切工作正常。我可以安裝嗎?位於網絡共享文件夾的NET COM庫?
其它的信息:
寫在COM庫通過VB宏
圖書館網絡3.5
訪問COM具有強名稱
將COM服務器放在網絡共享上需要麻煩。當映射的驅動器號不再映射或映射到別處時,它將隨機失敗。您至少需要到服務器的UNC路徑(如\\machine\folder\etc
),不太確定您會使用/ codebase選項從Regasm.exe中獲取此路徑。驗證註冊表項值HKLM \ Software \ Classes \ CLSID {guid}。確保你使用/ codebase,如果沒有它,這是行不通的。
信任可能是一個問題,使用fuslogvw.exe來查看發生了什麼。您需要caspol.exe來分配信任。
然後有依賴的DLL,Windows和CLR都無法找到它們。要查看使用SysInternals的ProcMon實用程序的真實情況。您將看到COM通過註冊表鍵查找DLL並查看失敗的調用。
這可能是組件需要完全信任和喲你沒有運行.net 4.0。在較早的版本中,除非手動更改權限集,否則網絡位置不會獲得完全信任。
我試圖使用以下命令將庫添加到受信任的庫: caspol -machine -addfulltrust「\\ lanpc \ sharedfolder \ mycomserver.dll」,但沒有任何結果 – stanik 2010-12-08 14:50:01