我要将项目移植到c ++ / winrt,并希望摆脱所有丑陋的COM调用。要正确链接create_instance和get_activation_factory,我需要做什么?
在x86上无法解析_WINRT_CoCreateInstance@20
,在x64上无法解析WINRT_CoCreateInstance
。
我必须包括哪个标头来解析这些符号?
<winrt/base.h>
和许多其他winrt标头已经包含在内。
不用写这个:
winrt::check_hresult(
CoCreateInstance(
CLSID_WICImagingFactory2,
nullptr,
CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(m_wicFactory.put())
)
);
我更想使用这个:
m_wicFactory =
winrt::create_instance<IWICImagingFactory2>(CLSID_WICImagingFactory2);