[Remoting FAQ]
Loading a Remoting Host On IIS
得到BadImageFormatException异常
|
Version |
Date |
Creator |
Description |
|
1.0.0.1 |
2006-4-24 |
郑昀@Ultrapower |
草稿 |
继续阅读之前,我们假设您熟悉以下知识:
n Remoting
n Remoting from IIS Hosted component
[现象]
首先,这种情况发生在以下特殊情形:
服务器端把Remoting Objects“宿主(Host)”在IIS中;
客户端激活远端Remoting Objects的调用方则得到了这个异常“BadImageFormatException”。
比如浏览Remoting对象的URL:
http://localhost/MyHelloServer/Hello.soap?wsdl
立即得到了这样的错误提示:
|
IIS提示信息 |
System.BadImageFormatException: 文件“MyHelloServer”的格式无效。 文件名: “MyHelloServer” |
需要特别指出的是,这种情况还有两个关联条件:
l Remoting服务器端是用VS.NET 2005编译的。
l 你的服务器环境中,既有dotNet framework 1.1,又有dotNet framework 2.0。
[分析]
综上所述,往往人们就开始怀疑自己的编译是不是有问题,或者虚拟目录的权限问题。
但是,当你排除了这两个疑点之后,你应该还要想起一件事:
这种事情是不是和你的部署环境有关系。
默认情况下,如果你的机器环境中既有dotNet framework 1.1(通常是1.1.4322);又有dotNet framework 2.0 (通常是2.0.50727)。
那么当你在IIS管理器中新建一个虚拟目录的话,默认使用ASP.NET V1.1版本。如下图所示:
![[RemotingFAQ]Load Remoting得到BadImageFormatException](/ArtImage/20060513/kh25_1.jpg)
而你的Remoting Objects却是用dotNet framework 2.0编译出来的。在这种情况下,难怪IIS告诉你“文件“MyHelloServer”的格式无效”。
[解决]
综上所述,请修改你的虚拟目录的ASP.NET version为2.0。
相关专题
- vb.net入门——OpenFileDialog 组件的使用 (75次浏览)
- vb.net入门——FontDialog 组件的使用 (52次浏览)
- vb.net入门——FolderBrowserDialog 组件的使 (45次浏览)
- vb.net入门——ColorDialog 组件的使用 (41次浏览)
- 用vb.net创建一个鼠标绘图程序 (39次浏览)
- vb.net入门——SaveFileDialog 组件的使用 (38次浏览)
- 在vb.net中用ado.net连接Access (25次浏览)
- ASP.NET缓存:方法分析和实践示例 (23次浏览)
- asp.net动态设置WebService引用 (22次浏览)
- VB.NET关于加密算法 (18次浏览)



