VS2012如何引用第三方的system.dll而不报错

鱼dotNet 2017-01-16 10:34:02
因项目中的一个模块需要调用第三方提供的C++的dll,其中有system.dll,import主要的dll后该system.dll也被编译了,然后和自带的System.dll冲突会报错,有没有什么办法能够既调用了第三方的dll又不报错?
...全文
216 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Poopaye 2017-01-16
  • 打赏
  • 举报
回复
dllimport可以写路径啊
stherix 2017-01-16
  • 打赏
  • 举报
回复
引用 8 楼 mynameisfish 的回复:
[quote=引用 4 楼 stherix 的回复:] 估计得把模块里第三方system.dll的名字改掉,同时改掉这个dll的文件名 因为当前文件夹下存在system.dll的时候,.net会优先引用这个
这个的话需要让dll提供方那边重新编译dll吧,我们就买了人家两百块钱的东西,感觉人家都不鸟我们但是领导又说他们这个模块好,省成本 [/quote] 如果只有这个system.dll是第三方的, 那么并不需要他们重新编译,你们自己的代码改一下就行 如果是他们的模块引用了这个dll 那么改模块里面的引用,用二进制工具改,搜索system.dll这个名字 当然前提是没有加壳
鱼dotNet 2017-01-16
  • 打赏
  • 举报
回复
引用 6 楼 shingoscar 的回复:
[quote=引用 5 楼 mynameisfish 的回复:] [quote=引用 3 楼 shingoscar 的回复:] 2选1么,不要告诉我2个dll还有本质性的区别?
有啊,第三方的那个是C++编译的,和我的很多不一样吧,我importdll的时候不是要把需要的dll都放到程序运行的debug下嘛,然后这个system.dll被编译后使我项目里引用的自带的System.dll就不能正常使用了(引用列表那边带黄色三角感叹号),然后会报几十个相关错误[/quote] ……换个名字吧,或者放到别的目录里,再或者有源码把第三方的编译到一块儿。[/quote] import的dll可以不放在程序启动目录?
鱼dotNet 2017-01-16
  • 打赏
  • 举报
回复
引用 7 楼 u010909114 的回复:
换个马甲呗!!!!!!
怎么换呢?
鱼dotNet 2017-01-16
  • 打赏
  • 举报
回复
引用 4 楼 stherix 的回复:
估计得把模块里第三方system.dll的名字改掉,同时改掉这个dll的文件名 因为当前文件夹下存在system.dll的时候,.net会优先引用这个
这个的话需要让dll提供方那边重新编译dll吧,我们就买了人家两百块钱的东西,感觉人家都不鸟我们但是领导又说他们这个模块好,省成本
花开花折 2017-01-16
  • 打赏
  • 举报
回复
换个马甲呗!!!!!!
Poopaye 2017-01-16
  • 打赏
  • 举报
回复
引用 5 楼 mynameisfish 的回复:
[quote=引用 3 楼 shingoscar 的回复:] 2选1么,不要告诉我2个dll还有本质性的区别?
有啊,第三方的那个是C++编译的,和我的很多不一样吧,我importdll的时候不是要把需要的dll都放到程序运行的debug下嘛,然后这个system.dll被编译后使我项目里引用的自带的System.dll就不能正常使用了(引用列表那边带黄色三角感叹号),然后会报几十个相关错误[/quote] ……换个名字吧,或者放到别的目录里,再或者有源码把第三方的编译到一块儿。
鱼dotNet 2017-01-16
  • 打赏
  • 举报
回复
引用 3 楼 shingoscar 的回复:
2选1么,不要告诉我2个dll还有本质性的区别?
有啊,第三方的那个是C++编译的,和我的很多不一样吧,我importdll的时候不是要把需要的dll都放到程序运行的debug下嘛,然后这个system.dll被编译后使我项目里引用的自带的System.dll就不能正常使用了(引用列表那边带黄色三角感叹号),然后会报几十个相关错误
stherix 2017-01-16
  • 打赏
  • 举报
回复
估计得把模块里第三方system.dll的名字改掉,同时改掉这个dll的文件名 因为当前文件夹下存在system.dll的时候,.net会优先引用这个
Poopaye 2017-01-16
  • 打赏
  • 举报
回复
2选1么,不要告诉我2个dll还有本质性的区别?
鱼dotNet 2017-01-16
  • 打赏
  • 举报
回复
引用 1 楼 shingoscar 的回复:
把自带的system.dll删掉啊,又不是必要的。
不行啊,winform的项目,里面好多都是引用system.XXX的
Poopaye 2017-01-16
  • 打赏
  • 举报
回复
把自带的system.dll删掉啊,又不是必要的。

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧