WerRegisterMemoryBlock 函式 (werapi.h)
註冊 Windows 錯誤報告 (WER) 建立錯誤報告時所要收集的記憶體區塊。
語法
HRESULT WerRegisterMemoryBlock(
[in] PVOID pvAddress,
[in] DWORD dwSize
);
參數
[in] pvAddress
記憶體區塊的起始位址。
[in] dwSize
記憶體區塊的大小,以位元組為單位。 此參數的最大值是WER_MAX_MEM_BLOCK_SIZE個字節。
傳回值
此函式會在成功或失敗時傳回錯誤碼 S_OK ,包括下列錯誤碼。
傳回碼 | Description |
---|---|
WER_E_INVALID_STATE | 進程狀態無效。 例如,此程式處於應用程式恢復模式。 |
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) | 已註冊的記憶體區塊和檔案數目超過限制。 |
備註
向此函式註冊的記憶體只會新增至堆積或較大的傾印檔案。 此記憶體永遠不會新增至迷你傾印或較小的傾印檔案。
針對當機且沒有回應,操作系統會自動提供錯誤報告 (您不需要在應用程式中提供任何錯誤報告程式碼) 。 如果您使用此函式來註冊記憶體區塊,操作系統會在當機或非回應時,將記憶體區塊資訊新增至傾印檔案。 只有在伺服器要求其他數據時,才會將記憶體區塊新增至報表的傾印檔案。
針對泛型事件報告,應用程式必須直接呼叫 WER 泛型事件報告函式。 若要將記憶體區塊新增至泛型報表,請呼叫 WerReportAddDump 函式,然後呼叫 WerReportSubmit 函式並指定WER_SUBMIT_ADD_REGISTERED_DATA旗標。
若要從此清單中移除區塊,請呼叫 WerUnregisterMemoryBlock 函式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | werapi.h |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |