VB生成exe后在其他电脑上运行提示找不到所调用的那个DLL文件
您好,我看到您回答了一个VB调用Fortran编译的DLL文件后,生成exe文件在其他电脑上无法运行的问题,我也遇到了相同的问题,错误提示找不到所调用的那个DLL文件。请...
您好,我看到您回答了一个VB调用Fortran编译的DLL文件后,生成exe文件在其他电脑上无法运行的问题,我也遇到了相同的问题,错误提示找不到所调用的那个DLL文件。请问是缺少了什么的原因?我用depends查询了该DLL所依赖的其他DLL复制在同一目录下后,仍然提示找不到DLL文件。
求帮忙! 展开
求帮忙! 展开
2个回答
展开全部
并不是说把DLL复制到程序文件夹就行的。DLL是函数库文件,其中包含的函数理论上是可以供其他任何软件调用的,而不是专供某个软件使用的(当然如果不公开其调用方法,它就自然变成某个软件专用的库函数了)。因此,一般情况下是把DLL文件放到一个公共文件夹中的(比如Windows的System32文件夹),其次,需要注册才行,实际上就是把库函数的入口存放到系统注册表中,这样其他软件才能找到函数入口并进行调用。注册方法是用regsvr32.exe,比如在开始菜单的运行中输入:
regsvr32 c:\windows\system32\xxxx.dll
regsvr32 c:\windows\system32\xxxx.dll
更多追问追答
追问
(1)我需要调用的那个dll文件用depends查询后发现它仍然调用或依赖了其他的dll,由于我的dll是通过Fortran编译生成的,它依赖于几个fortran文件夹中的dll文件,那么我是把这些dll全部打包过来,放在其他电脑的system32文件夹下吗?
(2)这些所有的dll都要注册吗?还是只有我编译生成的那个dll需要注册呢?
(3)将我编译的dll放在了system32,但是注册时失败了
追答
注册失败时提示什么信息?
展开全部
需要打成安装包在运行的其它机子中安装注册
更多追问追答
追问
感谢回答!~
我打成了安装包,而且把该DLL和其他的几个DLL加到了包里面。安装后运行提示找不到DLL文件。 两个问题(1)打安装包一定要在我自己的那台可以运行的电脑上打包吗?我是把那个DLL和VB的工程复制出来在其他的电脑(安装了VB)上打包的,这样会不会有问题?(2)安装包做好了之后在其他的电脑上安装后还需要注册吗?如果需要改怎么注册呢?
万分感谢你的回答!
追答
要在你通过编译的机子上打包
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询