导出时是:__imp_?Utf82Unicode@@YA?AV?$basic_string@GU
导入时是:__imp_?Utf82Unicode@@YA?AV?$basic_string@_WU
G和_W的区别,为了研究各字母的含义。做了如下实验:
void fun()=>
?fun@@YAXXZ
void fun(int)=>
?fun@@YAXH@Z
void fun(int a,int b)=>
?fun@@YAXHH@Z
void fun(int a,int b,int c)
?fun@@YAXHHH@Z
void* fun()=>
?fun@@YAPAXXZ
void** fun()==>
?fun@@YAPAPAXXZ
void fun(short * )
?fun@@YAXPAF@Z
short* fun(short * )
?fun@@YAPAFPAF@Z
int fun(bool,char,short int,long,float,double )
?fun@@YAH_NDFJMN@Z
int fun(bool,char,short int,long,float )
?fun@@YAH_NDFJM@Z
int fun(bool,char,short int,long)=>
?fun@@YAH_NDFJ@Z
int fun(bool,char,short int )=>
?fun@@YAH_NDF@Z
int fun(bool,char)=>
?fun@@YAH_ND@Z
int fun(bool )=>
?fun@@YAH_N@Z
int fun(bool a)=>
?fun@@YAH_N@Z
int fun(CString)=>
?fun@@YAHV?$CStringT@DV?$StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@@Z
typedef ATL::CStringT< TCHAR, StrTraitMFC< TCHAR > > CString;
int fun(char)=>
?fun@@YAHD@Z
int fun(wchar_t)
?fun@@YAHG@Z
int fun(CArray<int,int>);
?fun@@YAHV?$CArray@HH@@@Z
int fun(CTime)
?fun@@YAHVCTime@ATL@@@Z
class CTestClass
{
};
_BMFGLOBE_EXPIMP int fun(class CTestClass);
?fun@@YAHVCTestClass@@@Z
int fun(unsigned char,unsigned int,unsigned long)
?fun@@YAHEIK@Z
int fun(__int64)
?fun@@YAH_J@Z
int fun(unsigned __int64 )
?fun@@YAH_K@Z
总结:
1,形参有没有名字,不影响导出。
2,int->H X->void void* ->PAX void**->PAPAX short->F short*->PAF
bool->N char->D long->J float->M double->N
CTime->VCTime@ATL CArray<int,int>->V?$CArray@HH
wchar_t非内置类型(unsigned short)->G wchar_t内置类型->_W unsigned char->E ,unsigned int->I,unsigned long->K
unsigned __int64->_K __int64->_J
注意:
dll导出的函数可以用VC自带的depend.exe查看。
lib导出的函数可以用命令查看:
dumpbin /LINKERMEMBER d:\Globe.lib > d:\1.txt
dumpbin是VC自动工具
开发环境:VS2002(VC7)
最后解决方法:
新加的dll 配置弄成和其他dll一样。
VS2005的规律见:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~