本人开发的一个RSA加/解密软件(不是吹,软件包括了老美当前最先进的几种加密算法),前几个版本没有问题(有兴趣可以访问我们的主页:http://moondream.vicp.net/Res/luntan/soft/SoftManage/ListSoft.asp?SoftID=39 下载试试)。
   后续版本用MFC Automation开发了一个COM组件作为加/解密核心模块,用Visual Studio 2003(估计是测试版本)开发的,编译、注册没有问题。可是,一等到我的客户程序一调用接口函数,msvcr71.dll就会产生异常。我试图跟踪异常,发现根本没有进入函数内部,而是在com进行接口调度时就产生了异常,也就是MFC中__com_method_dispatch()函数检查接口参数,似乎invoke_helper函数返回了错误。这意味这我的接口函数参数有误?我是完全用VS中右键添加方法的做法添加接口函数的,参数我反复检查过,不可能有问题。
   是否是调用规则(_stdcall, _cdecl)上有冲突?亦或MFC7.1或MSVCRT7.1有问题?ATL7.1我知道是有问题的(实现shellex时,对IShellInit接口访问后却不去访问IContextMenu接口,导致右键菜单无法实现,浪费了我很多时间!)。