HRESULT CExcludedMetadataElements::FinalConstruct()
{
	try
	{		
		GetImplementor().Initialise();
	}
	catch(Workshare::Exception& e)
	{
		return e.ErrorCode;
	}
	catch(...)
	{
		return ProcessUnhandledException();
	}
	return S_OK;
}
STDMETHODIMP CExcludedMetadataElements::get_Item(VARIANT vIndex, IMWExcludedMetadataElement** ppItem)
{
	try
	{		
		if(0 == ppItem)
			return Error("Invalid pointer.", __uuidof(IMWExcludedMetadataElements), E_INVALIDARG);

		*ppItem = GetImplementor().GetItem(vIndex);
	}
	catch(Workshare::Exception& e)
	{
		return Error(e.Message, __uuidof(this), e.ErrorCode); 
	}
	catch(...)
	{
		return ProcessUnhandledException();
	}

	return S_OK;
}
/*************************************
 * SetHandle
 *************************************/
SHVControlWrapperWin32* SHVControlWrapperWin32::SetHandle(HWND hWnd)
{
SHVControlImplementerWrapperWin32* ctrlImpl = (SHVControlImplementerWrapperWin32*)GetImplementor();
	ctrlImpl->Window = hWnd;
	return this;
}