Реферат: Перехват методов COM интерфейсов

TlsSetValue(m_slot, p);

}

p->push_back(t);

}

T pop()

{

std::deque<T>* p =

reinterpret_cast<std::deque<T>* >(TlsGetValue(m_slot));

T t = p->back();

p->pop_back();

return t;

}

std::vector<std::deque<T>* > m_stacks;

CComAutoCriticalSection m_sec;

DWORD m_slot;

};

Теперь у нас есть все необходимые составляющие. Класс ItfThunk собирает их вместе:

class ItfThunk

{

public:

ItfThunk(void* p) : m_p(p)

{

vptr = &vtbl;

}

void __stdcall preprocess(int n)

{

std::cout << "method " << n << " preprocess" << std::endl;

}

HRESULT __stdcall postprocess(int n, HRESULT hr)

К-во Просмотров: 662
Бесплатно скачать Реферат: Перехват методов COM интерфейсов