第一次错误:

原因:操作系统是64位的,但发布的程序引用了一些32位的ddl,所以出现了兼容性的问题
解决方案一:如果是64位机器,IIS——应用程序池——高级设置——启用32位应用程序 :true。

 版本是否为v4.0

接下来可能会有第二个错误

          错误摘要
HTTP 错误 500.21 - Internal Server Error
处理程序“WebServiceHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” 详细错误信息
模块 IIS Web Core 
通知 ExecuteRequestHandler 
处理程序 WebServiceHandlerFactory-Integrated 
错误代码 0x8007000d 
请求的 URL http://localhost:80/Ashx/VCode.ashx
物理路径 D:XXXXXX\Ashx\VCode.ashx
登录方法 匿名 
登录用户 匿名 
 最可能的原因:
•使用了托管的处理程序,但是未安装或未完整安装 ASP.NET
•处理程序模块列表的配置中存在录入错误。
 可尝试的操作:
•如果要使用托管的处理程序,请安装 ASP.Net
•请确保正确指定处理程序模块的名称。模块名称区分大小写,并使用 modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" 格式。

 

解决方案: 

    以管理员的身份去运行CMD下输入:"%WINDIR%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe" -iru -enable

第三个错误:

HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效。

 

详细错误信息:

 

模块
IIS Web Core

通知
BeginRequest

处理程序
尚未确定

错误代码
0x80070021

配置错误
不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或者是通过包含 overrideMode="Deny" 或旧有的 allowOverride="false" 的位置标记明确设置的。

配置文件
\\?\D:\IIS\RF\web.config

 

出现这个错误是因为 IIS 7 采用了更安全的 web.config 管理机制,默认情况下会锁住配置项不允许更改。

要取消锁定可以以管理员身份运行命令行    %windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers。其中的 handlers 是错误信息中红字显示的节点名称。
 
如果modules也被锁定,可以运行           %windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/modules
 
注意:要以管理员身份运行才可以,默认不是管理员身份,方法,在开始菜单中的搜索程序与文件输入CMD,就会在上方出现一个CMD.EXE,在这个CMD.EXE文件上点击键,选择“以管理员身份运行”,打开命令行窗口,输入以上命令即可。