qt导入头文件报错
刚交接同事的qt项目,环境是:
工程中在源代码引用文件或自己写方法调用到一些外部或系统库,编译会报一大堆错,重复引用等等。这种情况在vc上面是不会出现,搞不懂qt为什么这样,急暂未找到解决方案。尝试了一两天,后来发现不要再原来代码写,单独从工程菜单添加先模块,在新模块里面去写,然后再去引用这个新模块的类。
报错信息:
利用菜单增加新类模块,模块里再去调用vc++的动态库实现功能
#ifndef CHeader_H #define CHeader_H #ifdef __cplusplus extern "C" { // 告诉编译器下列代码要以C链接约定的模式进行链接 #endif //__stdcall int fnMsgbox(char* msg); #ifdef __cplusplus } #endif #endif // CHeader_H
#include "CHeader_H.h" #include <stdio.h> #include <stdlib.h> #include <windows.h> extern __stdcall int fnMsgbox(char* msg); int get(const char* data, int dataLen, char* outdata) { #if 1 typedef int(__stdcall* pmsgbox)(char*); HINSTANCE hModule = LoadLibraryA("msgbox.dll"); if(hModule==NULL) { MessageBoxA(0,"加载动态库失败","qt",0); return -1; } pmsgbox msgbox = (pmsgbox)GetProcAddress(hModule, "fnMsgbox"); if(msgbox) { msgbox("qt调用vc动态库"); } else { MessageBoxA(0,"加载动态库失败","qt",0); } FreeLibrary(hModule); #endif return 0; }