| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 594 人关注过本帖
标题:vs2022的显式链接问题,大佬们帮忙看看
只看楼主 加入收藏
鱼头豆腐汤
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2020-10-21
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:4 
vs2022的显式链接问题,大佬们帮忙看看
把dll文件已经置于项目文件的目录下面。
在项目的链接器的附加依赖项中也添加了dll文件。
项目编译时出现链接器LNK1107错误,找了很多地方都没有找到解决办法。
第一个帖子把dll的声明写错了,重新发一个帖子,顺便请问大家怎么删发错的帖子啊。

dll的声明
extern "C" _declspec(dllexport) void Wuhu();

dll的内容
程序代码:
void Wuhu() 
{
    printf("niubi");
}

图片附件: 游客没有浏览图片的权限,请 登录注册


项目文件中显式调用dll
程序代码:
typedef void(*pWuhu)();
int main()
{
    pWuhu myWuhu;
    HINSTANCE hMODULE = LoadLibrary(L"Dll2.dll");
    myWuhu = (pWuhu)GetProcAddress(hMODULE, "Wuhu");
    myWuhu();
    return 0;
}

错误信息
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 项目 dll 链接 void 文件 
2023-04-27 12:56
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:10 
把dll文件已经置于项目文件的目录下面
哪个下面?你应该将dll放在exe的GetCurrentDirectory下面

项目编译时出现链接器LNK1107错误
你用的是 LoadLibrary 呀,顶多会在运行时出错,而不是编译链接期出错。
难道又隐式link了这个dll,并且把dll链接进去了?(应该链接lib文件)
2023-04-27 14:15
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10566
专家分:43004
注 册:2014-5-20
收藏
得分:5 
_declspec(dllexport)
改试试
__declspec(dllexport)
2023-04-27 14:22
鱼头豆腐汤
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2020-10-21
收藏
得分:0 
回复 2楼 rjsp
感谢大佬,解决了。我删除了链接器的附加依赖项中的dll,只保留项目目录下的dll文件,运行成功。就是附加依赖项中添加dll,导致隐式link了这个dll文件,显式链接时出现链接器错误。
2023-04-27 16:43
鱼头豆腐汤
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2020-10-21
收藏
得分:0 
回复 3楼 吹水佬
感谢大佬,解决了。我删除了链接器的附加依赖项中的dll,只保留项目目录下的dll文件,运行成功。就是附加依赖项中添加dll,导致隐式link了这个dll文件,显式链接时出现链接器错误。
2023-04-27 16:46
快速回复:vs2022的显式链接问题,大佬们帮忙看看
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014798 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved