_COM_SMARTPTR_TYPEDEF(_DKHOpenAPI, __uuidof(_DKHOpenAPI));

_COM_SMARTPTR_TYPEDEF(_DKHOpenAPIEvents, __uuidof(_DKHOpenAPIEvents));


struct __declspec(uuid("cf20fbb6-edd4-4be5-a473-fef91977deb6"))

_DKHOpenAPI : IDispatch


struct __declspec(uuid("7335f12d-8973-4bd5-b7f0-12df03d175b7"))

_DKHOpenAPIEvents : IDispatch


struct __declspec(uuid("a1574a0d-6bfa-4bd7-9020-ded88711818d"))

KHOpenAPI;

    // [ default ] dispinterface _DKHOpenAPI

    // [ default, source ] dispinterface _DKHOpenAPIEvents

///////////////////////////////////////////////////////////////////////////////////////////////////////

int main()

{

    CoInitializeEx(nullptr, COINIT_MULTITHREADED);

    {

        HRESULT hr;

        CLSID clsid;

        CLSIDFromProgIDEx(OLESTR("KHOPENAPI.KHOpenAPICtrl.1"), &clsid);


        /*

        switch (hr)

        {

        case S_OK: cout << "S_OK";

            break;

        case CO_E_CLASSSTRING: cout << "CO_E_CLASSSTRING";

            break;

        case REGDB_E_WRITEREGDB: cout << "regdb_e_writeregdb";

            break;

        }

        */

        

        _DKHOpenAPI* pApp = nullptr;

        hr = CoCreateInstance(clsid, nullptr, CLSCTX_INPROC_SERVER, __uuidof(_DKHOpenAPI), reinterpret_cast<LPVOID*>(&pApp));

        

        switch (hr)

        {

        case S_OK: cout << "S_OK";

            break;

        case REGDB_E_CLASSNOTREG: cout << "REGDB_E_CLASSNOTREG";

            break;

        case CLASS_E_NOAGGREGATION: cout << "CLASS_E_NOAGGREGATION";

            break;

        case E_NOINTERFACE: cout << "E_NOINTERFACE";

            break;

        case E_POINTER: cout << "E_POINTER";

            break;

        }

        

        //pApp->CommConnect();

        

    }

    CoUninitialize();

    return 0;

}


https://docs.microsoft.com/en-us/windows/win32/learnwin32/example--the-open-dialog-box

이거보고 순서대로 했는데

pApp->CommConnect();

여기 부분이 실행이 안됨

다른 예제 따라 해보니까 ->하는순간 실행가능한 메서드 목록 뜨던데

내 코드는 왜 안됨?