简述:VS动态库的跨平台调用是说例如我们在vs2019编译的动态库,在vs2013或者vs2017等其他版本编译调用。
1.动态库编译:
参考如下作者的博客:
1)VS中设置参数:
设置动态库的".h"路径
设置lib路径:
2)将编译好的“.dll”放在与编译后的.exe相同路径下:
3)vs2019编译的库,在vs2019中进行测试编译时会看到调用的.dll库
简单直接暴力的方法是直接将涉及的所有.dll放在“2)”步骤中相同的位置;
但是实际:vs2019编译时使用的是:vcruntime140.dll, vcruntime140_1.dll, vcruntime140_app.dll, vcruntime140_1_app.dll,在vs2017和win10平台上面测试时可以编译调用。
4)将编译过程中的复制到txt文中,使用代码直接保存涉及到的.dll到其他文件夹下
python:文件转存代码
import os
import re
import shutil
path=r'C:\Users\OUR\Desktop\dd.txt'
destination_path=r'C:\Users\OUR\Desktop\destination'
if not os.path.exists(destination_file):
os.makedirs(destination_file)
with open(path,'r',encoding='utf-8') as f:
result=f.readlines()
for each in result:
each=(each.strip())
if "已加载" in each:
each_result=re.findall(r"已加载.*?”",each)
start_index=each_result[0].index('“')
end_index=each_result[0].index('”')
dll_path=each_result[0][start_index+1:end_index]
print(dll_path)
print(type(dll_path))
shutil.copy2(dll_path,destination_path)