Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
.gif)
| Previous | Next |
IWMSDataContainerCallback::OnGetInfo
A data source plug-in calls the OnGetInfo method to return the results when the server calls IWMSDataContainer::GetInfo.
Syntax
HRESULT OnGetInfo( HRESULT hr, DWORD dwFlags, QWORD qwInfoValue, QWORD qwContext );
Parameters
hr
[in] HRESULT identifying the result of a IWMSDataContrainer::GetInfo call.
dwFlags
[in] DWORD containing a member of the WMS_DATA_CONTAINER_GETINFO_FLAGS enumeration type. This must be the following value.
| Value | Description |
| WMS_SEEKABLE_CONTAINER | The data container supports seeking. |
qwInfoValue
[in] QWORD containing the specific information requested by the IWMSDataContainer::GetInfo method call. Currently, the server can only request the size, in bytes, of the data container by specifying WMS_DATA_CONTAINER_SIZE.
qwContext
[in] QWORD containing a value defined by the server to identify which IWMSDataContainer::GetInfo request the plug-in is responding to when it calls OnGetInfo. The plug-in must pass this value back unaltered.
Return Values
If the method succeeds, the plug-in must return S_OK. To report an error, the plug-in can return any HRESULT other than S_OK. If the plug-in uses the IWMSEventLog interface to log error information directly to the Windows Event Viewer, it is recommended that it return NS_E_PLUGIN_ERROR_REPORTED. Typically, the server attempts to make plug-in error information available to the server object model, the Windows Event Viewer, and the troubleshooting list in the details pane of the Windows Media Services MMC. However, if the plug-in uses the IWMSEventLog interface to send custom error information to the Windows Event Viewer, returning NS_E_PLUGIN_ERROR_REPORTED stops the server from also logging to the event viewer. For more information about retrieving plug-in error information, see Identifying Plug-in Errors.
Example Code
HRESULT STDMETHODCALLTYPE
CDataContainer::GetInfo(
DWORD dwInfoValueId,
IWMSDataContainerCallback *pCallback,
QWORD qwContext
)
{
HRESULT hr = S_OK;
if( WMS_DATA_CONTAINER_SIZE = dwInfoValueId )
{
//TODO: Determine the amount of data in the data container.
}
// Send the result, qwFileSize, to the server. Ignore any errors
// by specifying S_OK for the first parameter of OnGetInfo().
pCallback->OnGetInfo(
S_OK,
WMS_SEEKABLE_CONTAINER,
qwFileSize,
qwContext
);
return( hr );
}
Requirements
Header: datacontainer.h.
Library: WMSServerTypeLib.dll.
Platform: Windows Server 2003, Enterprise Edition; Windows Server 2003, Datacenter Edition; Windows Server 2008.
See Also
| Previous | Next |