ASP.NET在調(diào)用Office Com組件時(shí),經(jīng)常會(huì)出現(xiàn)權(quán)限限制的問題,而出現(xiàn)如下錯(cuò)誤:

現(xiàn)通過以下幾步設(shè)置,可解決上述問題: (1)64位系統(tǒng)中,請(qǐng)?jiān)贗IS應(yīng)用程序池集成模式中應(yīng)啟用調(diào)用32位應(yīng)用程序,或設(shè)應(yīng)用程序池的模式應(yīng)為”經(jīng)典“

(2)設(shè)置DCOM,在“開始”-“運(yùn)行”中運(yùn)行命令:Dcomcnfg.exe,在如下圖所示界面中分別對(duì)Office組件項(xiàng)進(jìn)行設(shè)置

(3)分別設(shè)置Word/PowerPoint/Excel上述項(xiàng)訪問權(quán)限


(4)經(jīng)過上述設(shè)置后,有可能還會(huì)出現(xiàn)權(quán)限調(diào)用失敗的問題(主要是Excel),這時(shí)需要對(duì)調(diào)用的用戶做進(jìn)一步的設(shè)置,選擇“下列用戶”,在“瀏覽”中來選擇指定本機(jī)管理員(有權(quán)限調(diào)用com組件的用戶),同時(shí)須保證該用戶在“安全"選項(xiàng)卡中已經(jīng)分配權(quán)限( 如步驟3所示),或者在”安全“選擇卡中給Everyone用戶分配所有權(quán)限亦可

(5)啟用ASP.NET模式


其實(shí)以上的配置,在ASP.NET應(yīng)用程序中,Web.config文件中配置以下節(jié)點(diǎn)(在系統(tǒng)中設(shè)置,會(huì)自動(dòng)在web.config中生成以下節(jié)點(diǎn),包括賬號(hào)和密碼),這時(shí)的用戶須與“標(biāo)識(shí)”選項(xiàng)卡中指定的用戶和密碼一致
<identity impersonate="true" userName="administrator" password="test" />

上述設(shè)置后,如還有問題,需要對(duì)IIS目錄權(quán)限進(jìn)行設(shè)置

|