System.IO.FileNotFoundException: 找不到指定的模块

qjqmoney 2015-07-25 08:46:24
开发环境:win7 64位系统,vs2013,目标框架:.NET Framework 4,目标平台为x64
我做的是一个windows窗体程序,开发完成后,在本机可以正常运行。

但是,上传到服务器上去后,在运行时会提示如下错误:
System.IO.FileNotFoundException: Could not load file or assembly 'Tms.dll' or one of its dependencies. 找不到指定的模块。
File name: 'Tms.dll'


我的服务器是windows server2008 sp1 64位系统,已安装了.net 4 和 4.5。

程序目录下已有Tms.dll这个文件了,是别人开发的64位的dll。

高手能帮忙看看是何原因吗?
...全文
1020 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xian_wwq 2015-07-26
  • 打赏
  • 举报
回复
先使用Depends检查Tms.dll依赖系统的相关dll是否完整.
ajianchina 2015-07-26
  • 打赏
  • 举报
回复
我昨天在网上看到的结果这是个com组件,你先确认一下该dll是不是com组件,com组件移植到另一台机器,不经注册肯定不可以使用,注册的同时会记下组件路径,否则即便放在程序包下面,或者在系统目录下,都无法使用。 regsvr32是纯com组件进行注册的命令,如果是.net写的com组件,要用regasm命令进行注册。 最好的方式是将你的程序做成安装包,在打包程序中找到该com组件,点击属性。在属性中有Register项,把值选择为vsdrfCOM即可。 还是那句话,你先确认一下该dll是否为com组件。
qjqmoney 2015-07-26
  • 打赏
  • 举报
回复
最关键的是,为什么本机可以,上传到服务器就不行了?我在本机也没有用regsvr32 注册,dll在项目里已经引用了,已在项目的路径中了。
ajianchina 2015-07-26
  • 打赏
  • 举报
回复
都结贴了,问题在哪儿也说一下吧。
threenewbee 2015-07-25
  • 打赏
  • 举报
回复
tms.dll拷贝过去了么
ajianchina 2015-07-25
  • 打赏
  • 举报
回复
com组件需要注册才能使用 拷贝Tms.dll到系统目录SysWOW64 运行:regsvr32 %windir%\SysWOW64\TMS.dll /s 进行注册

110,538

社区成员

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

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

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