HRESULT CScriptManager::AddNamedItem( LPCTSTR pszItemName, IDispatch* pDispatch ) { POSITION posScript; CScript* pScript; HRESULT hResult; m_mapNamedItems.SetAt( pszItemName, pDispatch ); pDispatch->AddRef(); CT2COLE pszItemNameO( pszItemName ); posScript = GetFirstScriptPosition(); while( posScript != NULL ) { pScript = GetNextScript( posScript ); ENSURE( pScript != NULL ); hResult = pScript->AddNamedItem( pszItemName ); if( FAILED( hResult ) ) { return( hResult ); } } return( S_OK ); }