已設定 PageHeapFlags

[本主題的目的是要說明 Exchange Server Analyzer 工具所引出的特定問題。您只應將它套用到已執行過 Exchange Server Analyzer 工具且有遇到該特定問題的系統。Exchange Server Analyzer 工具可免費下載,它會從拓撲中的每台伺服器遠端收集組態資料,並自動分析該資料。產生的報告會詳述重要的組態問題、潛在問題及非預設的產品設定。遵循這些建議,您便能達到較佳的效能、延展性、可靠性及執行時間。如需此工具的相關資訊或是要下載最新版本,請參閱 Microsoft Exchange Analyzer (https://go.microsoft.com/fwlink/?linkid=34707)。]  

上次修改主題的時間: 2005-11-18

Microsoft® Exchange Server Analyzer 工具會讀取下列登錄項目,以判定 PageHeapFlags 項目的值:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\STORE.EXE

HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MAD.EXE

HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\INETINFO.EXE

HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\EMSMTA.EXE

如果 Exchange Server Analyzer 發現 PageHeapFlags 的值存在,且設定成 0null 以外的任意值,就會顯示一則警告。

已設定 GlobalFlag 中所描述,PageHeapFlags 選項須與 GlobalFlag 登錄值搭配使用。PageHeapFlags 選項可讓您選取標準堆集驗證 (可在每個堆集配置結尾寫入填入模式,並在釋出配置時檢查模式) 或整頁堆集驗證。這會將無法存取的頁面放到每個配置的結尾,這樣程式會在存取超出配置的記憶體時立即停止。因為整頁堆集驗證會將整頁記憶體用於每個配置,所以廣泛使用它將會造成系統記憶體不足。

在此狀況下,Exchange Server Analyzer 會特別查看各種 Exchange 元件是否都已啟用任何 PageHeapFlags 值:

  • STORE.EXE - 資訊儲存庫處理程序
  • MAD.EXE - 系統服務員處理程序
  • INETINFO.EXE - IIS 管理及父處理序
  • EMSMTA.EXE - 郵件傳輸代理程式處理程序

除非您是在 Microsoft 產品支援服務的協助下主動參與偵錯或追蹤問題,否則建議一律都將 PageHeapFlags 值設定成 0 或予以完全刪除 (效果相同)。

PageHeapFlags 預設並不存在,而在需要偵錯 STORE.EXE 處理程序 (或任何其他處理程序) 時,您必須手動予以新增。您可以使用 Microsoft Windows Server™ 2003 支援工具 (位於 Windows Server 2003 CD 的 \Support 資料夾中) 所附的 Gflags 工具。或是,可以手動將值設定成 0,或使用登錄編輯程式來完全刪除 PageHeapFlags 值。兩個程序在本文件中都有說明。

important重要事項:
這篇文章包含和編輯登錄有關的資訊。在編輯登錄之前,請確定若發生問題時,您知道如何還原登錄。若需有關還原登錄的詳細資訊,請參考 Regedit.exe 或 Regedt32.exe 中的<還原登錄>說明主題。

若要使用 GFlags 更正這個錯誤

  1. 依序按一下 [開始] | [執行],然後在 [開啟] 欄位中執行 GFlags。即會出現 Global Flags 使用者介面。

  2. 在 [Image File Name] 欄位中,輸入 STORE.EXE

  3. 按一下 [Image File Options]。

  4. 清除所有核取方塊,然後按一下 [Apply]。

  5. 針對上面列出的每一個 Exchange 處理程序,重複步驟 2 到 4。

  6. 按一下 [OK],結束 GFlags 工具,然後重新啟動受影響的服務,使變更生效。

  7. 使用 GFlags 工具來清除此值時,並不會刪除或變更 PageHeapFlags 的值。而是將 GlobalFlag 值設定成 0,此值會覆寫及停用使用 PageHeapFlags 項目所設定的行為。

若要使用登錄編輯程式更正這個錯誤

  1. 開啟登錄編輯程式,例如 Regedit.exe 或 Regedt32.exe。

  2. 瀏覽至:HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\STORE.EXE

  3. 刪除 PageHeapFlags 值。

  4. 針對所列的所有 Exchange 處理程序,重複步驟 2 及 3。

  5. 結束登錄編輯程式,然後重新啟動受影響的服務,使變更生效。

編輯登錄之前,若需如何編輯登錄的相關資訊,請參閱微軟知識庫文件 - 256986<Microsoft Windows 登錄說明>(https://go.microsoft.com/fwlink/?linkid=3052&kbid=256986)。