InfoPath 2007 或 InfoPath 2003 Service Pack 1 停止回應當沒有 ActiveX 控制項與 ReadyState 屬性

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

888705
本文已封存。本文係以「現狀」提供且不會再更新。
徵狀
Microsoft Office InfoPath 2007 或 Microsoft Office InfoPath 2003 Service Pack 1 停止回應當沒有 ActiveX 控制項與 ReadyState 屬性。當您開啟或預覽 InfoPath 表單,其中包含 ActiveX 控制項與標準 ReadyState 屬性時,就會發生這個問題。

附註此外,您無法將未來的設計加入表單檢視。比方說您不能將新的控制項加入至表單檢視,且無法存取指令碼編輯器。而且,您輕鬆地無法刪除控制項從表單檢視。
發生的原因
之所以發生這個問題,是因為 InfoPath 正在等候 ReadyState 屬性 ActiveX 控制項將它設定為 4。
其他可行方案
請勿使用 ActiveX 控制項與 ReadyState 屬性。
狀況說明
Microsoft 已確認這是在 < 適用於 > 一節中所列出的 Microsoft 產品中有錯誤。
其他相關資訊
ReadyState 屬性具有下列的列舉型別:
  • READYSTATE_UNINITIALIZED = 0
  • READYSTATE_LOADING = 1
  • READYSTATE_LOADED = 2
  • READYSTATE_INTERACTIVE = 3
  • READYSTATE_COMPLETE = 4

如果要重現問題的步驟

建置名為 ReadyStateControl 的控制項。要這麼做,請您執行下列步驟:
  1. 啟動 Microsoft Visual Studio。NET 2003。
  2. 在 [檔案] 功能表上按一下 [新增],然後按一下 [專案],以建立新的專案。
  3. 在 [新增專案] 對話方塊按一下 [Visual C++ 專案]、 按一下 [ATL 專案,並在 [名稱] 方塊中鍵入 ReadyStateControl]。
  4. 按一下 [確定],然後再按一下 [完成] 以接受 ATL 專案的所有預設設定。
  5. 按一下 [專案] 功能表 加入類別
  6. 加入類別] 對話方塊中,按兩下 [ATL 控制項]。
  7. ATL 控制項精靈] 對話方塊中,輸入 ReadyState 在 [簡短名稱] 方塊中。
  8. 按一下 內建屬性、 按一下 [未支援] 清單中的 [就緒狀態,然後按一下 [>就緒狀態 屬性加入至 支援 清單。
  9. 按一下 [完成]。
  10. Readystate.h] 檔案中找出下列一行
    public CComControl<CReadyState>
    放在前一行下的面這一行
     public IObjectSafetyImpl<CReadyState, INTERFACESAFE_FOR_UNTRUSTED_DATA|INTERFACESAFE_FOR_UNTRUSTED_CALLER>
    附註 您必須加入逗號 (,) 到現有的一行加入新的一行前。
  11. 建置] 功能表上按一下 [若要建置專案的 建置方案]。
測試 ReadyStateControl 控制項。要這麼做,請您執行下列步驟:
  1. 啟動 InfoPath。
  2. 在 [檔案] 功能表上按一下 [設計表單]。
  3. 按一下 [設計表單] 窗格的 [新空白表單]。
  4. 按一下 [控制項],然後再按一下 [新增或移除自訂控制項
  5. 在 [新增或移除自訂控制項] 對話方塊中,按一下 [新增]。
  6. 在新增自訂控制項精靈中,按一下 CReadyState 物件,然後按一下 [下一步]。
  7. 按 [下一步] 以繼續,接受預設選項。按一下 [完成],然後再按一下 [確定]
  8. 自訂,] 下按一下 [控制項] 窗格中的 [CReadState 物件]。

    如此會將 CReadState 物件 控制項加入表單。
  9. 標準,按一下 [若要將 文字方塊 控制項加入至表單的 文字方塊]。
  10. 按一下 [預覽表單]。

    InfoPath 2003 Service Pack 1 沒有回應。您無法存取 [文字方塊] 控制項。
kbnoOfficeAlertID InfoPath2003 InfoPath2007 IP2007

警告:本文已自動翻譯

內容

文章識別碼:888705 - 最後檢閱時間:01/16/2015 01:37:37 - 修訂: 2.3

  • Microsoft Office InfoPath 2007
  • Microsoft Office InfoPath 2003, Service Pack 1 (SP1)
  • kbnosurvey kbarchive kbmt kbtshoot kbqfe kbbug KB888705 KbMtzh
意見反應