小弟刚出来工作,遇到了前所未有的难题,做了两个礼拜还没弄出来。泪奔中啊……希望各位大神能够帮助一二。源程序PTRTIM1000Dev头文件PTRTIM1000Dev.h中加载了TP7这样的一个程序包。
#include <ODevBase.h>
#include "TP7.h"#include "PTRTIM1000Struct.h"      //结构体
#include "PTRTIM1000Def.h"         //错误代码
#pragma comment(lib,"TP7TIM.lib")
对源程序进行封装后,得到PTRTIM001Dev。
头文件如下
#include "resource.h"
#include "PTRTIM1000Dev.h"
#include "PTRTIM1000Struct.h"
#include "ODevBase.h"class AFX_CLASS_EXPORT OPTRTIM001Dev
{
public:
int iSetCommPara(tDevReturn* p_psStatus);

OPTRTIM001Dev();
virtual ~OPTRTIM001Dev();
class OPTRTIM1000Dev *m_OPTRTIM1000Dev;
};
#endif 
PTRTIM001Dev.cpp实现头文件中的函数。(由于是测试,先做一个函数来试试。)
int OPTRTIM001Dev::iSetCommPara(tDevReturn* p_psStatus)
{
return m_OPTRTIM1000Dev->iSetCommPara(p_psStatus);
}封装程序得到PTRTIM001Dev.lib的动态库。到这里都一切正常。
最后做一个测试程序时,测试的头文件中包含了一下几个头文件和动态库。
#include "PTRTIM001Dev.h"
#include "PTRTIM1000Def.h"
#include "PTRTIM1000Struct.h"
#pragma comment (lib,"PTRTIM001DevDll.lib")编译的时候都全部通过,但是按F5调试的时候直接到类似下边的里边去了
7C9873BE   leave
7C9873BF   ret         4
7C9873C2   nop
7C9873C3   nop
7C9873C4   nop
7C9873C5   nop
7C9873C6   nop(~晕死了……~)
类似于加载多个动态库的还真是两眼一抹黑,完全搞不懂。这个东东搞的我是欲哭无泪,根本找不到问题所在。希望做过类似的或懂的朋友能够帮助一二,十分感谢。