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 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.
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

Kommentar hinterlassen

Bitte anmelden, um einen Kommentar hinzuzufügen. Sie sind noch nicht Mitglied? Jetzt teilnehmen