Microsoft Visual C++ 2010 Express

Microsoft Visual C++ 2010 Express

I am unable to get the Media SDK (2.0 Gold or earlier beta) to compile using Visual C++ 2010 Express. Is this a know limitation in the SDK? I have no problem using the SDK with the commercial non Express version at work. But I also have some pet projects of mine I would like to try out at home using the free Express edition. Any help much appriciated.

mfxSession mfx_Session;
mfxIMPL mfx_IMPL;

mfxStatus mfx_Status = MFXInit( MFX_IMPL_AUTO , 0 , &mfx_Session );
MFXQueryIMPL( mfx_Session , &mfx_IMPL );

if ( mfx_IMPL == MFX_IMPL_SOFTWARE ) OutputDebugString( L" MSDK Software." );
if ( mfx_IMPL == MFX_IMPL_HARDWARE ) OutputDebugString( L" MSDK Hardware." );

MFXClose( mfx_Session );


libmfx.lib(mfx_win_reg_key.obj) : error LNK2019: unresolved external symbol __imp__RegCloseKey@4 referenced in function "protected: void __thiscall MFX::WinRegKey::Release(void)" (?Release@WinRegKey@MFX@@IAEXXZ)
libmfx.lib(mfx_win_reg_key.obj) : error LNK2019: unresolved external symbol __imp__RegOpenKeyExA@20 referenced in function "public: bool __thiscall MFX::WinRegKey::Open(struct HKEY__ *,char const *,unsigned long)" (?Open@WinRegKey@MFX@@QAE_NPAUHKEY__@@PBDK@Z)
libmfx.lib(mfx_win_reg_key.obj) : error LNK2019: unresolved external symbol __imp__RegQueryValueExA@24 referenced in function "public: bool __thiscall MFX::WinRegKey::Query(char const *,unsigned long,unsigned char *,unsigned long *)" (?Query@WinRegKey@MFX@@QAE_NPBDKPAEPAK@Z)
libmfx.lib(mfx_win_reg_key.obj) : error LNK2019: unresolved external symbol __imp__RegEnumValueA@32 referenced in function "public: bool __thiscall MFX::WinRegKey::EnumValue(unsigned long,char *,unsigned long *,unsigned long *)" (?EnumValue@WinRegKey@MFX@@QAE_NKPADPAK1@Z)
libmfx.lib(mfx_win_reg_key.obj) : error LNK2019: unresolved external symbol __imp__RegEnumKeyExA@32 referenced in function "public: bool __thiscall MFX::WinRegKey::EnumKey(unsigned long,char *,unsigned long *)" (?EnumKey@WinRegKey@MFX@@QAE_NKPADPAK@Z)



4 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项
Best Reply

Hi John,Seems that advapi32.lib which contains those registry functions cannot be found. But that's not the limitation of Visual Studio. Please make sure you have Windows SDK installed - it contains advapi32.lib under \Lib. (Windows SDK is a software requirement for Media SDK - please see release notes). Then check that Windows SDK is registered with your Visual C++ 2010 Express(all include, lib and bin folders are added to VS search paths) so that VS can find the advapi32.lib.Regards,Nina

Thank you so much for the help. The project compiles fine now.
I allready had Windows SDK 7 installed and search paths added. But I had to manully include the advapi32.lib into my project for it to work.

Regards
John Arne

Glad to hear that! Adding the lib as additional dependency was another option that we were going to offer if first 2 wouldn't have helped :)Nina

发表评论

登录添加评论。还不是成员?立即加入