因此,我已經完成了很多挖掘該錯誤的工作,並且我想我已經嘗試過每一個我在本網站以及微軟論壇上看到的解決方案。我希望有人能告訴我我做錯了什麼,並幫助我。檢索具有CLSID的組件的COM類工廠{00020906-0000-0000-C000-000000000046}
Application wordApp = new Application();
Document wordDoc = new Document();
當我的應用程序獲取到代碼的第2行以上,它錯誤的出帶:
檢索COM類工廠CLSID組件{00020906-0000-0000-C000-000000000046}失敗,由於到以下錯誤:80070005訪問被拒絕。 (來自HRESULT的異常:0x80070005(E_ACCESSDENIED))。
我見過的所有解決方案都是編輯DCOM設置以允許應用程序池/認證用戶/ IUSR /網絡服務/我可能會忘記其中一兩個適合我的實例IIS。 (我們在7.5)
我們所有的Intranet應用程序都通過Internet選項>安全設置>本地Intranet區域使用帶有當前用戶名和密碼選項的自動登錄,並且我們所有的應用程序在整個會話中模擬客戶端。
按照我發現的建議,我已經在全局級別設置了DCOM設置,以及本地Microsoft Word應用程序級別和我知道我的用戶在其中的Active Directory組,並繼續得到相同的錯誤。
在嘗試看看我是否能與應用程序池的身份工作,而不是我想這樣的:
private static WindowsImpersonationContext context = null;
context = WindowsIdentity.Impersonate(System.IntPtr.Zero);
,並給了DCOM設置權限IIS應用程序池\ MyAppPoolName,但錯誤仍然存在。
我現在找不到鏈接,但我嘗試過的另一個解決方案是將桌面文件夾添加到以下位置,這是由於某種錯誤,併爲我的用戶和/或應用池ID訪問這些錯誤。這也沒有奏效。
C:\ WINDOWS \ system32 \設置\ systemprofile \
C:\ WINDOWS \ Syswow64資料\ CONFIG \ systemprofile \
如果任何人有意見了,我很願意聽到他們的聲音。我完全沒有想法。如果我沒有提供足夠的信息,我會很樂意提供更多信息。感謝您提供任何幫助。