Compiler errors 未使用WinRT+定义CoCreateInstanceFromApp;Visual Studio 2013

Compiler errors 未使用WinRT+定义CoCreateInstanceFromApp;Visual Studio 2013,compiler-errors,ffmpeg,windows-runtime,visual-studio-2013,windows-rt,Compiler Errors,Ffmpeg,Windows Runtime,Visual Studio 2013,Windows Rt,我正在试验ffmpeg和Windows RT(ARM)。首先,我在MinGW/MSYS shell中运行configure: ./configure --enable-shared --disable-static --toolchain=msvc --extra-cflags="-D_M_ARMM -D_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE -DWINAPI_FAMILY=WINAPI_FAMILY_APP" --enable-cross-com

我正在试验ffmpeg和Windows RT(ARM)。首先,我在MinGW/MSYS shell中运行configure:

./configure --enable-shared --disable-static --toolchain=msvc --extra-cflags="-D_M_ARMM -D_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE -DWINAPI_FAMILY=WINAPI_FAMILY_APP" --enable-cross-compile --target-os=win32 --arch=win32 --extra-ldflags="-MACHINE:ARM" --arch=arm --cpu=armv7
后跟一个“make”(在同一个shell中),以以下错误结束:

C:\Program Files (x86)\Windows Kits\8.1\include\um\combaseapi.h(1157) : 
error C4013: 'CoCreateInstanceFromApp' undefined; assuming extern returning int
make: *** [libavformat/format.o] Error 2
shell中的环境变量设置为ARM Visual Studio 2013

这个错误意味着什么?有人能告诉我如何解决这个问题的正确方向吗


请注意,

确保正确定义了目标Windows API的版本。要在基于Windows运行时的平台上以基于COM的API(如MediaFoundation)为目标,必须在包含之前在编译器设置中设置_WIN32_WINNT=0x0603。可以在Visual Studio项目设置中执行此操作:


是代码> CasBase.LIB < /C>链接?如果添加“代码> -LRunTimeObjult.LIB < /C>和<代码> -Lcombase。LIB < /C> >代码> -LDLDFLAGs/COD> >没有任何更改。我只是将函数添加到示例C++ Windows Store应用程序中,并且没有任何问题。似乎其中一个标题没有正确包含。如果没有包含winapifamily.h,则不会定义该函数<代码>#如果是WINAPI家庭分区(WINAPI分区应用程序)