C#项目同时使用x86和x64版本dll库
问题描述:
需要使用的C++类库区分x64和x86版本,但C#项目只能使用一种需要编码X64、X86版本,有不能在编译时经常改引用DLL,能不能再编译时根据编译选项自动选择dll库版本并复制到输出路径
解决:
1.准备dll库编译好的两个版本;
2.在C#项目中引用随编一个(一般x64,x86引用文件都一致);
3.卸载该项目后,修改C#工程文件(*.csproj):
3.1 找到自动生成的引用节点
Note:
1.貌似也可以动态指定路径:
<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"><ItemGroup Condition="Exists('$(MSBuildThisFileDirectory)\DLLs\x86')"><CefDlls32 Include="$(MSBuildThisFileDirectory)\DLLs\x86\*.*" /></ItemGroup><ItemGroup Condition="Exists('$(MSBuildThisFileDirectory)\DLLs\x64')"><CefDlls64 Include="$(MSBuildThisFileDirectory)\DLLs\x64\*.*" /></ItemGroup> </Project>
2.2 添加props文件,并在文件中写入复制信息以及路径:
<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Target Name="CefSharpCopyDlls86" BeforeTargets="AfterBuild" Condition="'$(Platform)' == 'x86'"><Message Importance="high" Text="Copying cef.dlls x86 binaries" /><Copy SourceFiles="@(CefDlls32)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" /> </Target> <Target Name="CefSharpCopyDlls64" BeforeTargets="AfterBuild" Condition="'$(Platform)' == 'x64'"><Message Importance="high" Text="Copying cef.dlls x64 binaries" /><Copy SourceFiles="@(CefDlls64)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" /></Target> </Project>
2.3 在项目文件中导入两个文件,ok;
![](/assets/blank.gif)
转载于:https://www.cnblogs.com/forevertime/p/7458899.html
C#项目同时使用x86和x64版本dll库相关推荐
- 模块“CHUSBDLL.DLL.dll“可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86或x64版本兼容 【已解决】
1.点击链接下载CHUSBDLL.DLL 2.把CHUSBDLL.DLL拷贝到系统的system32文件夹下 3.开始->运行->regsvr32 CHUSBDLL.DLL 因为我的系统是 ...
- [Qt]VS2015下Qt项目的x86和x64版本编译
原创文章,欢迎转载.转载请注明:转载自 祥的博客 原文链接:https://blog.csdn.net/humanking7/article/details/85883828 文章目录 @[toc] ...
- VS2015命令行工具X86和X64版本
今天使用vs命令行编译GDAL时,发现一坑,特此记下. 注意VS2015命令行工具有x86,x64以及其他多个兼容版本,具体详见下图. 我们一般使用VS命令行工具时,通过VS2015界面---> ...
- VS2017 编译 PDFium 源码,生成 x86、x64,动态库、静态库
PDFium 源码编译 一.下载源码: 1.下载 depot_tools 源码: https://chromium.googlesource.com/ch ...
- python37.dll可能与您正在运行_模块可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86或x64...
今天一个网友群里留言,他win8的系统,下载我们的软件无法正常运行,原来他的win8是64位的系统,而我们的软件是32位,而且这个软件还需要一个dll文件,没有注册就无法使用,参考下面的方法解决了 1 ...
- 从X86向X64迁移的一点心得
X64平台越来越普及,目前一些分析软件多推出了X64版本,而我们的工具集项目同样也有X64版本.我们基于同一套标准C++代码实现了Windows和Linux的跨平台,这几天从X86平台向X64平台迁移 ...
- VS2015+Qt5.9.4 项目x86版本转x64版本编译
很多人首次改变编译平台,x86转x64时都会这样: 选择Qt Options, 改变默认Qt版本为64,此时发现平台版本还是x86 然后你可能会选择项目,然后右键 找到Qt Project Setti ...
- 如何检查Windows Vista , XP和2003系统是32位或64位( x86或x64 )版本
您可能会收到一个电脑作为礼物,以及想要找出系统是否设置了一个32位或64位(微软标签,他们作为x86或x64 )为基础的作业系统,这需要特别建造的应用软件. ) . For computer or P ...
- msvc2017配置qt5.12.8 x86和x64库版本切换
1. QT vs Tool安装可以直接去qt官网下载 http://download.qt.io/archive/vsaddin/ 插件版本高,但不一定好用,而且有BUG 我下载了2.5.1版本的插件 ...
最新文章
- python自动测试p-python自动化测试报告(excel篇)
- 密度泛函DFT与神经网络
- 全球及中国医用敷料市场销售前景与竞争格局研究报告2022版
- PHP学习笔记 - 进阶篇(7)
- Cow Picnic(POJ-3256)
- 巴菲特将退休并把公司交给网红接管?被一封信恶搞...
- 蓝桥杯 ADV-71 算法提高 判断回文
- 如何修改Qt Creator的界面语言
- python3 单例模式_当python,单例模式,多例模式,一次初始化遇到一起
- linux shell脚本 检查IP地址格式
- Spring Boot项目中使用 TrueLicense 生成和验证License(服务器许可)
- 犯贱报(一张浓缩大学生活的..)
- 电路基础和电路模拟——复习
- 中国 各大银行bankCode 开户行代码和名称 高清银行图标
- ensp下载与安装问题
- gta5服务器端文件夹,GTA5路径在steam哪个文件夹里面
- Unity发布WebGL遇到的问题
- [代码审计]信呼协同办公系统2.2存在文件上传配合云处理函数组合拳RCE
- 通过短信网关发送Wappush消息
- 全球媒体网关行业收入预计2028年达到19.442亿美元