C#에서 EasyHook을 사용하여 COM 개체의 메서드 (관리되지 않음)에 제대로 연결하려고합니다.후크 함수 처리
COM 개체의 메서드 주소를 확인할 수 있었고 제대로 후크 기능을 트리거 할 수있었습니다. 그들은 난 그 같지 않은 사람들을 (한 번 내 후크 안에, 모든 매개 변수가 뒤섞여 그러나
SendHook = LocalHook.Create(0x12345678, new DMyFunc(MyFunc_Hooked), this);
: 나는 자습서에있는 것과 거의 비슷한 코드의 나머지되고, 이런 식으로했다 원래 전달).
또한 반환 할 수 없습니다 (단락을 반환하고 값이 제대로 반환되지 않는 다른 함수를 연결하려고 시도했음을 유의하십시오). 내가 eXescope을 열 때
,이 함수 서명 중 하나입니다
function MyFunc(out ParamA:^BSTR; out ParamB:^bool): ^TypeA;
그리고 나는 C#에서 일반적으로 COM 개체를 사용하는 경우이 함수의 서명은 다음과 같습니다
TypeA MyFunc(ref string ParamA, ref bool ParamB);
어떤 아이디어 ? 미리 감사드립니다!
COM 개체에 대한 포인터가되는 호출에 대한 첫 번째 매개 변수를 고려하고 있습니까? COM 호출의 예를 보려면 다음을 참조하십시오. http://www.codeproject.com/Articles/13601/COM-in-plain-C –
그 사실을 알지 못했지만 계정, 감사합니다 !!!!! –