Не могу перечислить домены приложения с ICorPublishAppDomainEnum - PullRequest
0 голосов
/ 26 марта 2020

Я пытаюсь внедрить библиотеку DLL и перечислить домены приложений в целевом процессе:

void EnumAppDomains()
{
    HRESULT hr = 0;
    ICorPublish *pPublish = NULL;
    ICorPublishProcess *pProcess = NULL;
    ICorPublishAppDomainEnum *pDomainEnum = NULL;
    ICorPublishAppDomain *appDomains[1];

    hr = CoCreateInstance(CLSID_CorpubPublish, NULL, CLSCTX_INPROC_SERVER, IID_ICorPublish, (LPVOID*)&pPublish);
    if (!SUCCEEDED(hr))
    {
        DbgPrint(L"CoCreateInstance(): 0x%X\n", hr);
        return;
    }

    hr = pPublish->GetProcess(GetCurrentProcessId(), &pProcess);
    if (!SUCCEEDED(hr))
    {
        DbgPrint(L"ICorPublishProcess::GetProcess(): 0x%X\n", hr);
        return;
    }

    ...

Всегда происходит сбой при hr = pPublish->GetProcess(GetCurrentProcessId(), &pProcess);:

[4016] ICorPublishProcess::GetProcess(): 0x80070057

Ошибка недействительна параметр, что может go здесь не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...