none
以Visual Studio.NET 2003開發之專案,在Windows Server 2003端執行完全正常,但在Windows Server 2008端執行卻發生例外狀況之問題 RRS feed

  • 一般討論

  • 各位先進指教:

    因有歷史包袱存在, 我在Windows Server 2008端有安裝Visual Studio.NET 2003,另為能執行OUTPUTExcel,故主機端亦有安裝OFFICE,也在Visual Studio.NET 2003建置一個方案ok,client端以ie瀏覽器執行查尋時, 總是在執行有使用CreateObject("Excel.Application") 的某一支ASP.NET 程式,發生下列情況:

     

    程式段落:

    239: Dim oXL As xls.Application

    240: Dim oWB As xls.Workbook

    241: Dim oSheet, oSheet2 As xls.Worksheet

    242: oXL = CreateObject("EXCEL.Application")

    243: oWB = oXL.Workbooks.Open(strTempPath + "\XLS\SAMPLE.xls")

    244: oWB.Sheets("文件").Select()

    245: oSheet = oWB.ActiveSheet

    ------- 以下略 ----------------------

     

    異常訊息:

    System.Runtime.InteropServices.COMException (0x800A03EC): 發生例外狀況於 HRESULT: 0x800A03EC Microsoft.Office.Interop.Excel.Workbooks.Open(String Filename, Object UpdateLinks, Object ReadOnly, Object Format, Object Password, Object WriteResPassword, Object IgnoreReadOnlyRecommended, Object Origin, Object Delimiter, Object Editable, Object Notify, Object Converter, Object AddToMru, Object Local, Object CorruptLoad) DocWEB.DOCXLS.print_Click(Object sender, EventArgs E) E:\DOCWEB\DOCXLS.aspx.vb: 243

     

    242oXL = CreateObject("EXCEL.Application")可正常執行, 243oXL.Workbooks.Open(SAMPLE.xls")卻異常,ASPNET,NETWORK SERVICE,IUSR_myCOMPUTERE:\DOCWEB目錄也都有完全控制權限,那問題在那裡?請問該如何解決?
    • 已變更類型 Lolota Lee 2010年3月3日 上午 09:19
    2010年2月24日 上午 07:01

所有回覆

  • 在 Server 端存取 Excel 檔案的利器:NPOI Library


    不能用NPOI嗎...
    2010年2月24日 上午 07:09
  • 改成下列方式試看看:

    oWB = oXL.Workbooks.Open(strTempPath + "\XLS\SAMPLE.xls"
    , Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing, Type.Missing, true)
    微軟技術支援中心 CSS - http://www.dotblogs.com.tw/lolota
    2010年2月24日 上午 07:34
  • 引自 MSDN Library 中的說明:

    如果使用者的地區設定中所選取的地區與 Microsoft Office Excel 2003 所安裝之語言設定不符,則當使用者呼叫特定的 Excel 方法與屬性時,可能會收到以下錯誤:

    類型 'System.Runtime.InteropServices.COMException' 很可能於 mscorlib.dll 發生例外狀況。

    其他資訊:發生例外狀況於:0x800A03EC。


    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    請不要藉新手之名行小白之實,否則只會讓更多無辜的新手得不到幫助而已。
    如果不知道什麼是小白,請參閱:何謂小白
    2010年2月24日 上午 07:49
    版主
  • 改成下列方式試看看:

    oWB = oXL.Workbooks.Open(strTempPath + "\XLS\SAMPLE.xls"
    , Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing, Type.Missing, true)
    微軟技術支援中心 CSS - http://www.dotblogs.com.tw/lolota

    一樣問題, 無效!
    2010年2月24日 上午 07:57
  • 在 Server 端存取 Excel 檔案的利器:NPOI Library


    不能用NPOI嗎...

    此解決方式,本公司會考慮,但近況問題須先處理!!
    2010年2月24日 上午 07:59
  • 引自 MSDN Library 中的說明:

    如果使用者的地區設定中所選取的地區與 Microsoft Office Excel 2003 所安裝之語言設定不符,則當使用者呼叫特定的 Excel 方法與屬性時,可能會收到以下錯誤:

    類型 'System.Runtime.InteropServices.COMException' 很可能於 mscorlib.dll 發生例外狀況。

    其他資訊:發生例外狀況於:0x800A03EC。


    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    請不要藉新手之名行小白之實,否則只會讓更多無辜的新手得不到幫助而已。
    如果不知道什麼是小白,請參閱:何謂小白

    那意思是可能office必須重裝了???
     
    2010年2月24日 上午 08:20
  • 調一下主機上的語系設定應該就可以。
    不過當初就應該灌相對應語系的 Office 才是吧?
    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    請不要藉新手之名行小白之實,否則只會讓更多無辜的新手得不到幫助而已。
    如果不知道什麼是小白,請參閱:何謂小白
    2010年2月24日 上午 09:24
    版主
  • 貴公司真是積非成是啊. 你知道連微軟都不建議在Web 程式使用office Automation嗎 ?
    請看 [Office 伺服器端自動化的考量因素 ]
    MSDN 文件庫很重要
    問題本身越具體, 越容易得到大家的回應
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    2010年2月24日 上午 09:50
    版主
  • 你用哪個帳號跑這個網頁?
    該帳號有完成過 Office 初始化嗎?
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2010年2月24日 下午 12:22
  • 你用哪個帳號跑這個網頁?
    該帳號有完成過 Office 初始化嗎?
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。

    Office 初始化?是指?
    2010年4月22日 上午 08:41
  • 引自 MSDN Library 中的說明:

    如果使用者的地區設定中所選取的地區與 Microsoft Office Excel 2003 所安裝之語言設定不符,則當使用者呼叫特定的 Excel 方法與屬性時,可能會收到以下錯誤:

    類型 'System.Runtime.InteropServices.COMException' 很可能於 mscorlib.dll 發生例外狀況。

    其他資訊:發生例外狀況於:0x800A03EC。


    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    請不要藉新手之名行小白之實,否則只會讓更多無辜的新手得不到幫助而已。
    如果不知道什麼是小白,請參閱:何謂小白

    最近要幫客戶移機,也是遇到此問題,

    例外詳細資訊: System.Runtime.InteropServices.COMException: 發生例外狀況於 HRESULT: 0x800A03EC

    原始程式錯誤:

    在執行目前 Web 要求期間,產生未處理的例外狀況。如需有關例外狀況來源與位置的資訊,可以使用下列的例外狀況堆疊追蹤取得。

    堆疊追蹤:

    [COMException (0x800a03ec): 發生例外狀況於 HRESULT: 0x800A03EC]
     Excel.Workbooks.Open(String Filename, Object UpdateLinks, Object ReadOnly, Object Format, Object Password, Object WriteResPassword, Object IgnoreReadOnlyRecommended, Object Origin, Object Delimiter, Object Editable, Object Notify, Object Converter, Object AddToMru) +0
     admin.GetExcel.終點費_1(String sfile) +142
     admin.GetExcel.ProcessData(String sEvent) +1375
     admin.GetExcel.Page_Load(Object sender, EventArgs e) +406
     System.Web.UI.Control.OnLoad(EventArgs e) +99
     System.Web.UI.Control.LoadRecursive() +50
     System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627
    

    是將原本在2003 server 移至 2008 server ,該裝的都裝了,這應是那裡的設定沒有設到,可以請教一下嗎?

    ps:

    將原本在2003 server 移至 2003 server 另一台,測試是正常的。

    2010年4月22日 上午 08:42
  • 你會不會把問題丟太久了?

    每個帳號在第一次登入時,會自動設定該帳號的相關功能,包含 IE 、桌面、Office 等,關於 Office 部分稱為 Office 初始化。


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2010年4月22日 下午 12:04