www.pudn.com > WMACompressor.zip > Profile.cpp


// 
//  THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY 
//  KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR 
//  PURPOSE. IT CAN BE DISTRIBUTED FREE OF CHARGE AS LONG AS THIS HEADER  
//  REMAINS UNCHANGED. 
// 
//  Email:  yetiicb@hotmail.com 
// 
//  Copyright (C) 2002-2004 Idael Cardoso.  
// 
#include "StdAfx.h" 
#include ".\profile.h" 
#include "ProfileManager.h" 
 
 
CProfile::CProfile(CProfileManager* pPm, GUID id) 
{ 
  if ( FAILED(pPm->m_ProfileManager->LoadProfileByID(id, &m_Profile)) ) 
  { 
    m_Profile = NULL; 
  } 
} 
 
CProfile::CProfile(CProfileManager* pPm, LPCWSTR ProfileData) 
{ 
  if ( FAILED(pPm->m_ProfileManager->LoadProfileByData(ProfileData, &m_Profile)) ) 
  { 
    m_Profile = NULL; 
  } 
} 
 
CProfile::~CProfile(void) 
{ 
} 
 
 
 
BSTR CProfile::GetName(void) 
{ 
  if (!m_Profile) 
  { 
    return NULL; 
  } 
  else 
  { 
    DWORD len = 0; 
    if ( SUCCEEDED(m_Profile->GetName(NULL, &len)) ) 
    { 
      CComBSTR Str(len); 
      if ( SUCCEEDED(m_Profile->GetName(Str, &len)) ) 
      { 
        return Str.Detach(); 
      } 
      else 
      { 
        return NULL; 
      } 
    } 
    else 
    { 
      return NULL; 
    } 
  } 
} 
 
BSTR CProfile::GetDescription(void) 
{ 
  if (!m_Profile) 
  { 
    return NULL; 
  } 
  else 
  { 
    DWORD len = 0; 
    if ( SUCCEEDED(m_Profile->GetDescription(NULL, &len)) ) 
    { 
      CComBSTR Str(len); 
      if ( SUCCEEDED(m_Profile->GetDescription(Str, &len)) ) 
      { 
        return Str.Detach(); 
      } 
      else 
      { 
        return NULL; 
      } 
    } 
    else 
    { 
      return NULL; 
    } 
  } 
}