Microsoft Windows CE 3.0  

IPin::QueryId

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Retrieves an identifier for the pin.

HRESULT QueryId( LPWSTR *
Id
);

Parameters

Id
[out] Pin identifier.

Return Values

Returns an HRESULTvalue that depends on the implementation. HRESULTcan be one of the following standard constants, or other values not listed.

E_FAIL Failure.
E_POINTER Null pointer argument.
E_INVALIDARG Invalid argument.
E_NOTIMPL Method isn't supported.
S_OK or NOERROR Success.

Remarks

This method and the IBaseFilter::FindPinmethod allow connections in a filter graph to be saved and restored. Because pins are identified only by their IPininterface pointers at run time, and pointer information cannot be reliably saved, an identifier is necessary to specify which pins belong to each filter. The implementation of this method by the pin provides a unique name that the filter graph manager can use to turn into an IPininterface pointer, by calling IBaseFilter::FindPinwhen the filter graph is restored.

The storage is allocated by the filter using the Microsoft Win32 CoTaskMemAllocfunction. The caller should free it by using CoTaskMemFree.

This method is implemented in the base classes by CBasePin::QueryId.