这个bug找了将近一天,上层调用的dll库里面的函数<带有结构体形参的>,传入的结构体结构调试发现参数全部是系统默认的了,不是我传入的参数,void SaveEncPara(CARD_PARA stPara, int card);这个函数是dll库我封装的,结果上层传入的结构体发现参数怎么都不对,检查代码都是OK的,最后发现,因为这个结构体是库里面的,上层要创建这个结构体对象然后传参数到函数,这个结构体申明的地方必须dll库与上层软件公用同一个头文件,否则相当于两个结构体,这样传入的结构体虽然都是一模一样的,但是系统将认为是两个;