CMMFMetaDataEntry 问题
有做过的提醒一下,这个问题该如何解决。
从一个音频文件中取得一些信息,譬如 艺术家,标题什么的
但编译出错:
error LNK2001: unresolved external symbol "public: class TDesC16 const & __thiscall CMMFMetaDataEntry::Value(void)const " (?Value@CMMFMetaDataEntry@@QBEABVTDesC16@@XZ)
error LNK2001: unresolved external symbol "public: class TDesC16 const & __thiscall CMMFMetaDataEntry::Name(void)const " (?Name@CMMFMetaDataEntry@@QBEABVTDesC16@@XZ)
相关源代码如下:
#include <mmf\common\MmfMeta.h>
#include <mmf\common\mmfcontrollerframeworkbase.h>
iMdaAudioPlayerUtility->GetNumberOfMetaDataEntries(count);
if ( count > 0 )
{
for ( TInt i = 0; i < count; i++ )
{
CMMFMetaDataEntry* entry = iMdaAudioPlayerUtility->GetMetaDataEntryL(i);
CleanupStack::PushL(entry);
if (entry->Name().CompareF(KMMFMetaEntrySongTitle) == KErrNone)
{
iMetaDataTitle.Copy(md->Value().Ptr(), md->Value().Length() < iMetaDataTitle.MaxLength() ?
md->Value().Length() : iMetaDataTitle.MaxLength());
iMetaDataTitle.Trim();
titleMdFound = ETrue;
}
else if (entry->Name().CompareF(KMMFMetaEntryArtist) == KErrNone)
{
iMetaDataArtist.Copy(md->Value().Ptr(), md->Value().Length() < iMetaDataArtist.MaxLength() ?
md->Value().Length() : iMetaDataArtist.MaxLength());
iMetaDataArtist.Trim();
artistMdFound = ETrue;
}
else if (entry->Name().CompareF(KMMFMetaEntryGenre) == KErrNone)
{
iMetaDataGenre.Copy(md->Value().Ptr(), md->Value().Length() < iMetaDataGenre.MaxLength() ?
md->Value().Length() : iMetaDataGenre.MaxLength());
iMetaDataGenre.Trim();
genreMdFound = ETrue;
}
CleanupStack::PopAndDestroy(entry);
if ( titleMdFound && artistMdFound && genreMdFound )
break;
}
}