我在win10系统上使用vs2013在debug模式下编写并生成了一个dll,并用vb6调用成功,然后我把程序包拷贝到一台没有vs2013环境的xp电脑中运行,结果报错 : dll文件未找到。
我链接dll的代码如下:
Private Declare Sub MyFunction Lib "ToufangDll" (ByRef addr_i As Double, ByRef addr_o As Double)
我已经尝试了一下几种方法,但都失败了
1、换另一台win10和win7电脑,当不安装vs2013时报相同的错,安装后能正常运行,但是xp电脑无法安装vs2013。然而试验又必须使用这台xp电脑。
2、安装vs2013运行库 64位和32位都装了,仍然报错
3、使用regsvr32注册dll,但报错找不到指定模块
4、用vs2013生成dll时平台工具集使用xp,仍然报错
实在不行我准备换vc6重新生成dll,毕竟xp可以安装vc6,但是这样工作量较大,请问有没有别的办法?
你为啥不编译Release版本?
安装vs2013运行库 64位和32位都装了,仍然报错-----运行库不包含debug库的。
使用regsvr32注册dll,但报错找不到指定模块---你这不是需要注册的库,注册没有用。
xp最高支持.NET Framework 4.0。2013是.net 4.5,给xp安装.net 4.0,运行看看,要是不行,用编译.net 4.0版的dll到xp使用
运行库是不包含debug版的运行库的,visual studio里才提供。
你可以用process explorer查看exe加载的dll,把结尾带d的运行库dll复制出来,跟dll放一起,这样才能在别的系统里加载。
时间充足的情况下,可以换vc6重新生成dll试试。
时间如果赶得比较紧,就看看试验能不能换台机子/个系统,或者询问一下身边的朋友同学做过类似试验的。
process explorer查看exe加载的dll