CFtpConnection::GetCurrentDirectory未解析的令牌错误.不过,像SetCurrentDi

CFtpConnection::GetCurrentDirectory unresolved token error. Other functions like SetCurrentDirectory work though

本文关键字:不过 错误 SetCurrentDi 令牌 GetCurrentDirectory CFtpConnection      更新时间:2023-10-16

dll作为非托管代码编译良好,但当我在项目属性中添加/clr并更改为在共享dll中使用MFC时,mfCFtpConnection::GetCurrentDirectory会给我LNK2028和LNK2019错误。这是未解决的令牌和未解决的永恒符号错误。

我有#include并链接了wininet.lib。所以我很困惑。

我在网上读到一篇帖子,用户遇到了这个问题,它与mfc100.lib将CFtpConnection::GetCurrentDirectory重命名为CFtpConnection::GetCurrentDirectoryA有关。没有任何解决方案,微软的一位代表表示,它将在mfc100.lib的未来版本中得到修复。我不知道这是否是问题所在。

这是帖子的链接。链接到在线Post

任何想法都让我抓狂。

我还尝试了CFtpConnection::GetCurrentDirectoryAsURL,代码编译得很好。

我认为这个错误源于这样一个事实,即有一些#define用于绕过MFC dll的CLR限制。如果您使用的是VS2010,您可以将鼠标悬停在方法名称上,您将在生成的.obj文件中看到正在重命名方法的#define语句。由于它已被重命名,代码中的其他模块将无法链接到它。