Где определен IID агента IVpnManagementAgent - PullRequest
2 голосов
/ 03 июля 2019

Я пытаюсь создать объект IVpnManagementAgent, но я не могу найти, где определен его IID (IID___x_ABI_CWindows_CNetworking_CVpn_CIVpnManagementAgent), поэтому я могу создать экземпляр RoGetActivationFactory, так как мне кажется, что мне требуется секундапараметр REFIID.

Также я видел этот пример , но поскольку я использую C - я не могу использовать __uuidof.

Как ни странно, msdn sample , кажется, пропускает этот параметр.

Проблема заключается в том, что если я скомпилирую этот код:

#include <roapi.h>
#define COBJMACROS
#include <windows.networking.vpn.h>

(main)()
{__x_ABI_CWindows_CNetworking_CVpn_CIVpnManagementAgent *pVpnMan;
    IClassFactory *pCF; RoInitialize(RO_INIT_MULTITHREADED),
        RoGetActivationFactory(0,
            &IID___x_ABI_CWindows_CNetworking_CVpn_CIVpnManagementAgent, 
            &pVpnMan);}

Примерно так: cl rmousevpn.c /link RuntimeObject.lib windows.networking.lib

Itдает мне нерешенные:

rmousevpn.obj : error LNK2019: unresolved external symbol IID___x_ABI_CWindows_CNetworking_CVpn_CIVpnManagementAgent referenced in function main
rmousevpn.exe : fatal error LNK1120: 1 unresolved externals
...