-
-
[求助]dll注入问题
-
发表于:
2013-5-30 19:01
4466
-
问题描述:
【A.dll】代码实现中,当加载dll时,
初始化com组件,调用com接口如
HRESULT hr = CoCreateInstance(CLSID_CADOConnection, NULL, CLSCTX_INPROC_SERVER, IID_IADOConnection, (LPVOID *)&m_piConnection);
【可执行程序B.exe】,加载A.dll方式
方式1,直接在B.exe实现时loadlibrary加载A.dll,A.dll程序中调用com接口正常。
方式2,B.exe本身的实现没有加载A.dll,而是通过dll注入的方式【CreateRemoteThread,loadlibrary的方式】,这时A.dll,CoInitialize成功,但调用com接口出现B.exe界面卡死。
根据这个问题跟踪调试,
1 HRESULT hr = CoCreateInstance(CLSID_CADOConnection, NULL,
CLSCTX_INPROC_SERVER, IID_IADOConnection,
(LPVOID *)&m_piConnection);
2 if FAILED( hr )
{
.....
}
断点在标识1,2,两处,执行到1处代码,F10(下一步)之后,程序不会执行到2
环境:win7旗舰版,vs2008
请各位帮忙分析下什么问题哦。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!