入栈顺序问题!郁闷了三天的问题终于看到希望了!!
OSR自带的DEMO是VC的,编译后运行正常,但是同样的代码BCB调用去总是在一个函数上出错(之前用coff2omf把VC的静态库转成了BCB的)。几天来百思不得其解,VC和BCB都做反汇编跟踪跟踪好几次没有发现问题,今天终于注意到是原来参数的入栈顺序不同,调用正确的函数没有参数,只要两个以上参数入栈顺序才有差别;巧合的是这个出错的函数有三个参数,错误的入栈顺序没有引起内存泄漏而是被接口检测出来,返回了一个文档上没有说明的值。__fastcall __stdcall __cdecl __msfastcall修饰符的作用真不小啊。