为什么在x64构建中,ARM构建中缺少CoCreateInstanceFromApp?

时间:2018-10-18 12:10:16

标签: c++ arm directx directxtk

此问题尚无答案
我知道一个未解决的外部符号的含义-我特别在问为什么在将ARM编译为DirectX函数时缺少我的项目。当我为Raspberry Pi构建DirectX项目时,出现以下链接错误。 为什么CoCreateInstFromApp仅在ARM构建中缺少

CoCreateInstanceFromApp上的Microsoft文档暗示它应该只存在于任何Windows可执行文件中-实际上,这是我在构建同一项目的x86或x64版本时看到的。它应该存在,因为DirectX支持ARM体系结构-还是我错过了什么?

该项目包括d3d11.libdxgi.lib,我想它会从正确的目录中拾取-但没有得到关于那些库的特定错误。该项目是Visual Studio 2017 Pro v15.8.7中的C ++。

已编辑链接错误:

  

DirectXTK_ARM.lib:错误LNK2019:未解决   函数中引用的外部符号__imp_CoCreateInstanceFromApp   “ long __cdecl CoCreateInstance ...

     

DirectXTK_ARM.lib:错误LNK2019:未解决   外部符号__imp_PropVariantClear ....


更多信息(如果需要)

我已经更改了Microsoft的Desktop Duplication sample的屏幕截图,而不是进行复制,因此删除了窗口代码,并使用DirectXTK保存了文件。这在我的桌面和Minnowboard(x64 Win10 IoT)上效果很好。但是,如果我尝试为Raspberry PI(ARM)进行编译,它将失败并显示链接错误:

  

DirectXTK_ARM.lib(WICTextureLoader.obj):错误LNK2019:未解决   函数中引用的外部符号__imp_CoCreateInstanceFromApp   “ long __cdecl CoCreateInstance(struct _GUID const&,struct IUnknown   *,unsigned long,struct _GUID const&,void * *)“(?CoCreateInstance @@ YAJABU_GUID @@ PAUIUnknown @@ K0PAPAX @ Z)

     

DirectXTK_ARM.lib(WICTextureLoader.obj):错误LNK2019:未解决   函数“ long”中引用的外部符号__imp_PropVariantClear   __cdecl`匿名命名空间':: CreateTextureFromWIC(结构ID3D11Device *,结构ID3D11DeviceContext *,结构   IWICBitmapFrameDecode *,unsigned int,枚举D3D11_USAGE,unsigned   int,unsigned int,unsigned int,unsigned int,结构ID3D11资源*   *,结构ID3D11ShaderResourceView * *)“(?CreateTextureFromWIC @?   1

1 个答案:

答案 0 :(得分:1)

CoCreateInstancePropVariantClearole32.lib的一部分。

  

UWP应用程序应该与保护伞WindowsApp.lib链接,但是您也可以链接到IoT应用程序的保护伞mincore.lib