GetProcAddress动态加载某个DLL里的导出函数时,DllMain和导出函数的加载顺序.
搞得头晕了.特来请教.
GetProcAddress动态加载某个DLL里的导出函数时,
如果这个DLL没有DllMain,或则DLL_PROCESS_ATTACH下没有要执行代码.
则当然不存在上面这样的问题.DLL就像一个可随时调用的功能LIB库。
很不幸, 我的DLL不仅有DllMain, 而且DLL_PROCESS_ATTACH下还有要执行的代码.
更要命的是,这里的代码和导出函数里的代码访问的是同一个由"#pragma data_seg"
共享的某个变量.并对这个变量进行修改。
所以这里就产生了这个简直是地狱般的先后问题:
到底加载导出函数的时候,
1是先执行导出函数里的代码,在执行DllMain下L_PROCESS_ATTACH的代码?
2.反之.
增加了些测试代码, 好像是1的情况,特来求证!