Microsoft DirectX 8.0

IAMErrorLog Interface

Provides a callback method for error logging in Microsoft® DirectShow® Editing Services (DES).

DES does not implement this interface. To perform error logging, implement this interface in your application and call IAMSetErrorLog::put_ErrorLog on the timeline. If an error occurs when you render the project, DES will call the IAMErrorLog::LogError method implemented by your application.

DES logs errors only when you render a project using the IRenderEngine interface. For example, if you save a project as a DirectShow filter graph (.grf format) and play the graph file, there is no error logging.

For more information on using this interface, see Logging Errors.

Requirements

Requires Qedit.h.

Methods in Vtable Order

IUnknown methodsDescription
QueryInterfaceRetrieves pointers to supported interfaces.
AddRefIncrements the reference count.
ReleaseDecrements the reference count.
IAMErrorLog MethodsDescription
LogErrorLogs an error.

IAMErrorLog::LogError

IAMErrorLog Interface

Logs an error. Applications do not need to call this method. It is called internally in response to rendering errors.

Syntax

HRESULT LogError(
    LONG Severity,
    BSTR ErrorString,
    LONG ErrorCode,
    HRESULT hresult,
    VARIANT *pExtraInfo
);

Parameters

Severity
Reserved. Do not use.
ErrorString
String value containing the text of the error.
ErrorCode
Error code.
hresult
The HRESULT value that was returned by the method call that caused the error.
pExtraInfo
[in] Pointer to a VARIANT that contains any additional information about the error.

Return Value

Returns an HRESULT value. Return the value of the hresult parameter.

Remarks

Within this method, do not free the VARIANT pointed to by pExtraInfo. Also, the VARIANT becomes invalid after the method returns, so do not try to reference it later.

Implement this method to return as quickly as possible. Do not make function calls from inside this method that might block program execution. For example, do not call Microsoft® Win32® functions that send messages, block on events, or otherwise might block execution. Doing so could cause the computer to stop responding, or "hang."

For a list of errors defined by DES, along with the meaning and data type of the VARIANT pointed to by pExtraInfo, see Rendering Errors.