def文件加PRIVATE引起的编译出错:接口找不到

 

转载请标明是引用于 http://blog.csdn.net/chenyujing1234 

欢迎大家拍砖

一、

编译一个工程报导入的lib里的接口找不到

1>正在链接...
1>XSession.obj : error LNK2019: 无法解析的外部符号 "int __stdcall XLogon(struct _XLOGON_INFO *)" (?XLogon@@YGHPAU_XLOGON_INFO@@@Z),该符号在函数 "private: int __thiscall CXSession::DoAuthentication(void)" (?DoAuthentication@CXSession@@AAEHXZ) 中被引用
1>D:\Company_Centerm\xred\base\server\Debug\CTXCoreService.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>生成日志保存在“file://d:\Company_Centerm\xred\base\server\XCoreService\Debug\BuildLog.htm”


二、解决方法:

1、导出lib的工程的def文件为:

EXPORTS
    XLogon  PRIVATE
    XAuthen PRIVATE


现改为:

EXPORTS
    XLogon
    XAuthen


 2、

在导出的接口前面加入__stdcall

你可能感兴趣的:(server,struct,File)